a:6:{i:0;s:8090:"				<section id="middle">
				<div class="wrap" id="bodyFormat1">
				<div class="row1 dt columns23"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls detail_pm_15"><!--MIDDLE ROW1 COL-2 STARTS-->
				
									<div class="h1"><h1>Sbi Credit Card Jobs In Kolkata</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.diyaconsultancy.in/">Home</a>
					
										
					<b class="ffv p2px">&rsaquo;</b> Sbi Credit Card Jobs In Kolkata</p>
									<p class="mb5px"><i class="fa fa-briefcase mr7px fl w15px alpha50"></i> 0 - 1 Years</p>
				
									<p class="mb10px"><i class="fa fa-map-marker mr7px fl pl1px w15px alpha50"></i>Kharagpur, Kolkata, , Howrah, Barasat, Bidhan Nagar</p>
										
					<div>
					<form name="frmvacdetail" method="post" action="enquiry-form-10009.htm">
					<input style="padding:7px 15px;" class="button b ffos" type="submit" value="APPLY NOW !" />
					<input type="hidden" name="catalog_mi" value="325007">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="812822"><input type="hidden" name="subject" value="Applied for Sbi Credit Card Jobs in Kolkata">
					</form>
					</div>
			
						
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Job Description</p>
				<p class="aj mt10px">*Company Name* : SbI Card department(Off Roll)<br />
<br />
• Designation* : BRE ( Branch Relationship Executive ), RE ( Relationship Executive ), SBI Telecalling<br />
<br />
• Salary* : 8.5k to 15k NTH<br />
<br />
• Holiday* : Banking Holiday<br />
<br />
• Experience* : Fresher or Experience Both can apply<br />
<br />
• Candidate* : Male & Female both can apply<br />
<br />
• Job Description* : 10am to 4pm they have to stay in Branch & inside the branch they will convince to customer for Cedit Card after that thay have to report their respective credit Card office.<br />
<br />
• Qualification* : H.S. Must<br />
<br />
• Job Location* -<br />
<br />
Kolkata<br />
<br />
South North central<br />
<br />
Rasbihari to Garia hat. Joka Baruipur Sonarpur Budge Budge<br />
<br />
Dumdum to Boangoan<br />
<br />
Barasat to Basirhat<br />
<br />
Barracpur to Belghoria , kachrapara.<br />
<br />
Parksteet, parkcircus, Saltlake.<br />
<br />
Howrah<br />
<br />
Hoogly<br />
<br />
Arambagh<br />
<br />
Mursidabad<br />
<br />
(HS with good communication)<br />
<br />
All BRE<br />
<br />
• Interview Date* Daily<br />
<br />
• Interview Venue* Barasat Office<br />
<br />
1st Floor of Arunalay Appartment, 214 Jessore Road,Upper Floor of CEAT TYRE SHOWROOM, Kolkata 700124 (Near Champadali More)</p>
				
				<table class="w100 formTable bdr0 mt10px">				
											<tr>
							<td class="w22 alpha75 p5px">Salary</td>
							<td class="p5px"> 1  Lac  To  2  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="w22 alpha75 p5px">Industry</td>
					<td class="p5px">Banking / Investments / Stock Market / Financial Services</td>
					</tr>
									<tr>
				<td class="w22 alpha75 p5px">Work Experience</td>
				<td class="p5px">0 - 1 Years</td>
				</tr>
									<tr>
					<td class="w22 alpha75 p5px">Qualification</td>
					<td class="p5px">Higher Secondary</td>
					</tr>					
									
				</table>
				
				
				</div>
				
				<br>
				<div class="bdrT pt20px">
									<p class="xlarge b">Key Skills</p>
					<div class="mt10px dif">
											<span class="bn dib p5px10px c2px headVr mr7px mb7px">Accountant</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> accounting</span>
											</div>
									</div>
				
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Company Profile</p>
				<div class="mt10px">
				
									<table class="w100 formTable bdr0 mt5px">
											<tr>
						<td class="w22 alpha75 p5px">Contact Person</td>
						<td class="p5px">HR Ankita</td>
						</tr>					
												<tr>
						<td class="w22 alpha75 p5px">Address</td>
						<td class="p5px">Barasat,Kolkata</td>
						</tr>					
												<tr>
						<td class="w22 alpha75 p5px">Mobile </td>
						<td class="p5px">6290040366 </td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:diyaconsultancy2005@gmail.com"> diyaconsultancy2005@gmail.com </a></td>
						</tr>
										
					</table>
									
				<br />
				
									
					<div class="bdrT pt20px">
					<form name="frmvacdetail" method="post" action="enquiry-form-10009.htm">
					<input style="padding:7px 15px;" class="button b ffos" type="submit" value="APPLY NOW !" />
					<input type="hidden" name="catalog_mi" value="325007">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="812822"><input type="hidden" name="subject" value="Applied for Sbi Credit Card Jobs in Kolkata">
					</form>
					</div>
			
									</div>
				</div>			
				
				<!--MIDDLE ROW1 COL-2 ENDS--> 
				</div>
				<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<h2>Jobs by Location</h2>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-kharagpur.htm" title="Jobs in Kharagpur">Kharagpur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-kolkata.htm" title="Jobs in Kolkata">Kolkata</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-howrah.htm" title="Jobs in Howrah">Howrah</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-north-24-parganas.htm" title="Jobs in North 24 Parganas">North 24 Parganas</a> <b class="alpha50 bn small">(1)</b></span>
									</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<h2>Jobs by Functional Area</h2>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxation</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-banking-fid.htm" title="Banking / Investments / Stock Market / Financial Services Jobs">Banking / Investments / Stock Market / Financial Services</a> <b class="alpha50 bn small">(1)</b></span>
									
				</div>
				</div>
				</div>
				</div>
				
				</div>
				<!--MIDDLE ROW1 COL-1 ENDS-->
				
				<!--MIDDLE ROW1 ENDS--> 
				</div>
				<br><br>
				</div>
				</section>
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
					<script>
	$.ajax({
	  url: "https://www.placementindia.com/job_posting_view.php",
	  type: "POST",
	  dataType: 'html',
	  data: {job_view_id: 'TmlpbmlkcVpiSlFoRURsYzQxYzhGQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:139:"Sbi Credit Card Jobs in Kolkata Jobs in Kharagpur, Kolkata, , Howrah - Vacancy in Banking / Investments / Stock Market / Financial Services";i:2;s:318:"Sbi Credit Card Jobs in Kolkata Jobs,Sbi Credit Card Jobs in Kolkata Jobs in Kharagpur, Kolkata, , Howrah,Sbi Credit Card Jobs in Kolkata Vacancy in Kharagpur, Kolkata, , Howrah,Sbi Credit Card Jobs in Kolkata jobs in India,Banking / Investments / Stock Market / Financial Services jobs in Kharagpur, Kolkata, , Howrah";i:3;s:370:"Apply for Sbi Credit Card Jobs in Kolkata Jobs in Kharagpur, Kolkata, , Howrah India - Sbi Credit Card Jobs in Kolkata Vacancy  in Banking / Investments / Stock Market / Financial Services field with 0 to 1 years Work Experience, Key Skills are Accountant, accounting, Banking / Investments / Stock Market / Financial Services jobs in Kharagpur, Kolkata, , Howrah  India";i:4;s:1789:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Sbi Credit Card Jobs in Kolkata",
		  "baseSalary": " 1  Lac  To  2  Lac ",
		  "description": "*Company Name* : SbI Card department(Off Roll)

• Designation* : BRE ( Branch Relationship Executive ), RE ( Relationship Executive ), SBI Telecalling

• Salary* : 8.5k to 15k NTH

• Holiday* : Banking Holiday

• Experience* : Fresher or Experience Both can apply

• Candidate* : Male & Female both can apply

• Job Description* : 10am to 4pm they have to stay in Branch & inside the branch they will convince to customer for Cedit Card after that thay have to report their respective credit Card office.

• Qualification* : H.S. Must

• Job Location* -

Kolkata

South North central

Rasbihari to Garia hat. Joka Baruipur Sonarpur Budge Budge

Dumdum to Boangoan

Barasat to Basirhat

Barracpur to Belghoria , kachrapara.

Parksteet, parkcircus, Saltlake.

Howrah

Hoogly

Arambagh

Mursidabad

(HS with good communication)

All BRE

• Interview Date* Daily

• Interview Venue* Barasat Office

1st Floor of Arunalay Appartment, 214 Jessore Road,Upper Floor of CEAT TYRE SHOWROOM, Kolkata 700124 (Near Champadali More)",
		  "educationRequirements": "Higher Secondary",
		  "experienceRequirements": "0 - 1 Years",
		  "industry": "Banking / Investments / Stock Market / Financial Services",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "West Bengal",
		      "addressRegion": "Kharagpur, Kolkata, , Howrah, Barasat, Bidhan Nagar"
		    }
		  },
		 "qualifications": "Higher Secondary",
		     "skills": "Accountant, accounting"
		  }
		</script>
		";i:5;N;}