a:6:{i:0;s:5563:"				<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>Business Development Manager - Mortgages</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.dhanwaystrades.com/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.dhanwaystrades.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Business Development Manager - Mortgages</p>
									<p class="mb5px"><i class="fa fa-briefcase mr7px fl w15px alpha50"></i> 2 - 10 Years</p>
				
									<p class="mb10px"><i class="fa fa-map-marker mr7px fl pl1px w15px alpha50"></i>Mumbai</p>
						
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Job Description</p>
				<p class="aj mt10px">Minimum 2 years experience as sales manager or business development in the mortgages and home loan field. <br />
Generating business through Open Market, DSA, Channel partner.<br />
Devise and implement a customer acquisition and retention program. <br />
Ensure high level of customer service.<br />
Participate actively in sales planning to generate action plans for meeting targets.<br />
Responsible for achieving monthly business target. <br />
Handle the Builders / Architects / Chartered Accountants / Connectors to generate business in HL & LAP.</p>
				
				<table class="w100 formTable bdr0 mt10px">				
											<tr>
							<td class="w22 alpha75 p5px">Salary</td>
							<td class="p5px"> 3  Lac  50 Thousand  To  7  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">2 - 10 Years</td>
				</tr>
									<tr>
					<td class="w22 alpha75 p5px">Qualification</td>
					<td class="p5px">Professional Degree, Other Bachelor Degree, MD/Medicinae Doctor</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">Sales Manager</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 vat">Company Name</td>
						<td class="p5px vat"><p class="dif b">Bullionage International</p></td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">We are into financial services and advisory services of financial products .</td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:bullionage@gmail.com"> bullionage@gmail.com </a></td>
						</tr>
										
					</table>
									
				<br />
				
								</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-mumbai.htm" title="Jobs in Mumbai">Mumbai</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-banking-investment-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: 'MVM1bGxOa096bTVERExiMlliYkMwUT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:126:"Business Development manager - Mortgages Jobs in Mumbai - Vacancy in Banking / Investments / Stock Market / Financial Services";i:2;s:288:"Business Development manager - Mortgages Jobs,Business Development manager - Mortgages Jobs in Mumbai,Business Development manager - Mortgages Vacancy in Mumbai,Business Development manager - Mortgages jobs in India,Banking / Investments / Stock Market / Financial Services jobs in Mumbai";i:3;s:336:"Apply for Business Development manager - Mortgages Jobs in Mumbai India - Business Development manager - Mortgages Vacancy  in Banking / Investments / Stock Market / Financial Services field with 2 to 10 years Work Experience, Key Skills are Sales Manager, Banking / Investments / Stock Market / Financial Services jobs in Mumbai  India";i:4;s:1331:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Business Development manager - Mortgages",
		  "baseSalary": " 3  Lac  50 Thousand  To  7  Lac ",
		  "description": "Minimum 2 years experience as sales manager or business development in the mortgages and home loan field. 
Generating business through Open Market, DSA, Channel partner.
Devise and implement a customer acquisition and retention program. 
Ensure high level of customer service.
Participate actively in sales planning to generate action plans for meeting targets.
Responsible for achieving monthly business target. 
Handle the Builders / Architects / Chartered Accountants / Connectors to generate business in HL & LAP.",
		  "educationRequirements": "Professional Degree, Other Bachelor Degree, MD/Medicinae Doctor",
		  "experienceRequirements": "2 - 10 Years",
		  "industry": "Banking / Investments / Stock Market / Financial Services",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Maharashtra",
		      "addressRegion": "Mumbai"
		    }
		  },
		 "qualifications": "Professional Degree, Other Bachelor Degree, MD/Medicinae Doctor",
		     "skills": "Sales Manager"
		  }
		</script>
		";i:5;N;}