a:6:{i:0;s:12130:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for banking manager in kolkata</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.proactive-search.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.proactive-search.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for banking manager in kolkata</p>
					</div>
					</div>
					</section>
									<section id="middle">
				<div class="wrap" id="bodyFormatNT">
				<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="pt10px">
				<div class="xxxlarge fw6 dif">Banking Manager Kolkota Location</div>
									<p class="mt7px fw6">Kolkata</p>
									
				<br>
				<p class="aj mt7px">Currently we have opening for 2 banking candidates. 1 for junior profile for which you are already sharing cv’s and 1 for senior banking candidate which will be in the CTC range of 6-8 lacs.<br />
 <br />
Please find below the profile of the senior banking candidates. Kindly share the CV’s on priority.<br />
 <br />
Task	<br />
	<br />
 	<br />
ECB - Liaison with Bank for ECB application, documentation for issuance of LRN, Inward remittances and outward remittances as per the extract guidelines of RBI. Negotiation with the dealing rooms for best rates for conversion of Foreign Currency into INR. Responsible for submission of ECB returns on monthly basis.	<br />
	<br />
Export realisation -Responsible for timely informing the management for inward remittances of export realisation from all the banks. Monitoring, Managing & Gathering information from all the banks for other outward remittances via SWIFT, RTGS, NEFT. Complete process of managing, Preparation & Execution of documentation for payment to be credited in our Packing Credit Account against export realisation.	<br />
	<br />
Packing Credit - Responsible for complete process of inflow of export realisation till availment of Packing Credit and onward utilisation of all the banks. Monitoring & Maintenance of Buyers wise List and age wise adjustment of Bonds & Packing Credit.	<br />
	<br />
Forward contract/Conversion of FC in INR - Liaoning with the dealing rooms for best rates for our Forex conversion. Documentation for forwards, Booking of forwards. Maintaining  the utilisation and timely cancellation. Preparation of various documents as per the RBI guidelines for further submission to banks like - Quarterly CA Certificate for Forwards, communication and confirmation with the dealing room, UFCE, monthly declations etc.	<br />
	<br />
EDPMS (EBRC/Export Incentives) - Liasioning & actively participation and co-ordination with banks for clearance of EBRC'S so that the same is updated on the DGFT site. Solving the critical issues related to mismatch of the Realisation in EDPMS for pending/Current EBRC'</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">4 - 10 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 7  Lac  To  8  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Accounting / Auditing / Taxation</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Other Bachelor Degree</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Banking Manager</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Bank Manager</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Bank head</span>
												<span class="bdr dib p2px10px mr5px mt2px"> branch manager</span>
											</td>
					</tr>
									
				</table>
				</div>
				<br>
				<div class="pt20px">
				<p class="large fw6">About Company</p>
				<div class="mt10px">
				
									<table class="w100 formTable bdr0 mt5px">
											<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:hr@proactive-search.com"> hr@proactive-search.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="308759">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="917454"><input type="hidden" name="subject" value="Applied for Banking Manager Kolkota location">
					</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="large fw6 alpha75 p12px bdrB">
				<h2>Jobs by Location</h2>
				</div>
				<div class="ic">
				<div class="mt10px">
									<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-gurgaon.htm" title="Jobs in Gurgaon">Gurgaon</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-hyderabad.htm" title="Jobs in Hyderabad">Hyderabad</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-delhi.htm" title="Jobs in Delhi">Delhi</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-bangalore.htm" title="Jobs in Bangalore">Bangalore</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr 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 bdr mr7px mb7px "><a class="dif" href="jobs-in-mumbai.htm" title="Jobs in Mumbai">Mumbai</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-pune.htm" title="Jobs in Pune">Pune</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-mohali.htm" title="Jobs in Mohali">Mohali</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-rewari.htm" title="Jobs in Rewari">Rewari</a> <b class="alpha50 bn small">(1)</b></span>
											<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-uganda.htm" title="Jobs in Uganda">Uganda</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="large fw6 alpha75 p12px bdrB">
				<h2>Jobs by Functional Area</h2>
				</div>
				<div style="padding:10px 18px;" class="ic">
									<p class="mb5px "><span class="fr">(7)</span><a href="jobs-in-application-programming-fid.htm" title="IT Software - Application Programming / Maintenance Jobs">IT Software - Application Prog...</a></p>
										<p class="mb5px "><span class="fr">(3)</span><a href="jobs-in-sales-marketing-business-development-telecaller-fid.htm" title="Sales & Marketing / Business Development/telecaller Jobs">Sales & Marketing / Business D...</a></p>
										<p class="mb5px "><span class="fr">(3)</span><a href="jobs-in-education-teaching-training-counselling-fid.htm" title="Education / Teaching / Training / Counselling / Academic Jobs">Education / Teaching / Trainin...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-computers-it-fid.htm" title="IT Hardware / Technical Support / Telecom Engineering Jobs">IT Hardware / Technical Suppor...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxati...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-erp-crm-edp-software-fid.htm" title="IT Software- ERP / CRM / EDP / MIS Jobs">IT Software- ERP / CRM / EDP /...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-dba-database-management-fid.htm" title="IT Software - DataBase / Datawarehousing Jobs">IT Software - DataBase / Dataw...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-ites-bpo-kpo-lpo-customer-service-fid.htm" title="ITES / BPO / KPO / LPO / Customer Service Jobs">ITES / BPO / KPO / LPO / Custo...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-client-server-fid.htm" title="IT Software - Client Server Jobs">IT Software - Client Server</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-telecom-software-fid.htm" title="IT Software - Telecom Jobs">IT Software - Telecom</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-csr-sustainability-fid.htm" title="CSR / Sustainability Jobs">CSR / Sustainability</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-software-mainframe-fid.htm" title="IT Software - Mainframe Jobs">IT Software - Mainframe</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-mobile-software-application-fid.htm" title="IT Software - Mobile Technologies Jobs">IT Software - Mobile Technolog...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Q...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-network-administration-security-fid.htm" title="IT Software - Network Administration, Security Jobs">IT Software - Network Administ...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-software-middleware-fid.htm" title="IT Software - Middleware Jobs">IT Software - Middleware</a></p>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
									
				</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: 'M0JhZ3hWY2RDSzBSU3RuRnhEUWdIUT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:70:"Job openings for banking manager in kolkata | Proactive Search Systems";i:2;s:234:"Banking Manager Kolkota location Jobs,Banking Manager Kolkota location Jobs in Kolkata,Banking Manager Kolkota location Vacancy in Kolkata,Banking Manager Kolkota location jobs in India,Accounting / Auditing / Taxation jobs in Kolkata";i:3;s:315:"Apply for Banking Manager Kolkota location Jobs in Kolkata India - Banking Manager Kolkota location Vacancy  in Accounting / Auditing / Taxation field with 4 to 10 years Work Experience, Key Skills are Banking Manager, Bank Manager, Bank head, branch manager, Accounting / Auditing / Taxation jobs in Kolkata  India";i:4;s:2732:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Banking Manager Kolkota location",
		  "baseSalary": " 7  Lac  To  8  Lac ",
		  "description": "Currently we have opening for 2 banking candidates. 1 for junior profile for which you are already sharing cv’s and 1 for senior banking candidate which will be in the CTC range of 6-8 lacs.
 
Please find below the profile of the senior banking candidates. Kindly share the CV’s on priority.
 
Task	
	
 	
ECB - Liaison with Bank for ECB application, documentation for issuance of LRN, Inward remittances and outward remittances as per the extract guidelines of RBI. Negotiation with the dealing rooms for best rates for conversion of Foreign Currency into INR. Responsible for submission of ECB returns on monthly basis.	
	
Export realisation -Responsible for timely informing the management for inward remittances of export realisation from all the banks. Monitoring, Managing & Gathering information from all the banks for other outward remittances via SWIFT, RTGS, NEFT. Complete process of managing, Preparation & Execution of documentation for payment to be credited in our Packing Credit Account against export realisation.	
	
Packing Credit - Responsible for complete process of inflow of export realisation till availment of Packing Credit and onward utilisation of all the banks. Monitoring & Maintenance of Buyers wise List and age wise adjustment of Bonds & Packing Credit.	
	
Forward contract/Conversion of FC in INR - Liaoning with the dealing rooms for best rates for our Forex conversion. Documentation for forwards, Booking of forwards. Maintaining  the utilisation and timely cancellation. Preparation of various documents as per the RBI guidelines for further submission to banks like - Quarterly CA Certificate for Forwards, communication and confirmation with the dealing room, UFCE, monthly declations etc.	
	
EDPMS (EBRC/Export Incentives) - Liasioning & actively participation and co-ordination with banks for clearance of EBRC'S so that the same is updated on the DGFT site. Solving the critical issues related to mismatch of the Realisation in EDPMS for pending/Current EBRC'",
		  "educationRequirements": "Other Bachelor Degree",
		  "experienceRequirements": "4 - 10 Years",
		  "industry": "Accounting / Auditing / Taxation",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "West Bengal",
		      "addressRegion": "Kolkata"
		    }
		  },
		 "qualifications": "Other Bachelor Degree",
		     "skills": "Banking Manager, Bank Manager, Bank head, branch manager"
		  }
		</script>
		";i:5;N;}