a:6:{i:0;s:8465:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for insurance sales manager in east delhi delhi</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.akssolutionsgroup.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.akssolutionsgroup.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for insurance sales manager in east delhi delhi</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">Insurance Sales Manager</div>
									<p class="mt7px fw6">Delhi, East Delhi</p>
									
				<br>
				<p class="aj mt7px">JOB PROFILE<br />
<br />
Position	UM / ADM / Sr. ADM	Location	<br />
Reports to	Branch Manager	Category	Agency<br />
<br />
Our Vision	To be the trusted leader in Health insurance by providing innovative solutions to the citizens of India<br />
Our Mission	•	Constantly introduce innovative health insurance & wellness solutions that meet customer needs<br />
•	Build an organization on the principles of transparency, trust and integrity<br />
•	Create opportunities for our employees to learn and grow in an enjoyable work culture<br />
•	Constantly deliver on our commitments to all our stakeholders<br />
Our Values	•	Inspiring Passion<br />
•	Delivering on our promises<br />
•	Being responsive to our customers<br />
•	Managing relationships<br />
•	Thinking & Acting transparently	Our Principles	•	Compassionate<br />
•	Accountable<br />
•	Responsive<br />
•	Expert</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">1 - 13 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 2  Lac  25 Thousand  To  3  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px"></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">Insurance sales manager</span>
												<span class="bdr dib p2px10px mr5px mt2px"> sales management</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 vat">Company Name</td>
						<td class="p5px vat"><p class="dif b">Apollo Munich Health Insurance</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">Quality healthcare and Apollo have become synonymous in the Indian subcontinent, a fact reiterated by global healthcare experts and international accreditation bodies. Committed to bring world class health care within the reach of every individual, Apollo Hospitals Group has joined hands with Munich Health, a world leader in the field of health insurance.</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:hr.akssolutions@gmail.com"> hr.akssolutions@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="341373">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="746981"><input type="hidden" name="subject" value="Applied for Insurance sales manager">
					</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-mumbai.htm" title="Jobs in Mumbai">Mumbai</a> <b class="alpha50 bn small">(2)</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">(2)</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-noida.htm" title="Jobs in Noida">Noida</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-ludhiana.htm" title="Jobs in Ludhiana">Ludhiana</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-lucknow.htm" title="Jobs in Lucknow">Lucknow</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-agra.htm" title="Jobs in Agra">Agra</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-hapur.htm" title="Jobs in Hapur">Hapur</a> <b class="alpha50 bn small">(1)</b></span>
										<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">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-panipat.htm" title="Jobs in Panipat">Panipat</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">(1)</span><a href="jobs-in-financial-services-banking-investments-insurance-stock-market-loan-fid.htm" title="Financial Services / Banking, Investments / Insurance / stock market / Loan Jobs">Financial Services / Banking, ...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-self-employed-entrepreneur-consultants-freelancers-fid.htm" title="Self Employed / Entrepreneur / Consultants / Freelancers Jobs">Self Employed / Entrepreneur /...</a></p>
									
				</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: 'ZVU1NlAraks1bEo5TCt1bXFFcUlDdz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:84:"Job openings for insurance sales manager in east delhi delhi | AKS Solutions Pvt Ltd";i:2;s:160:"Insurance sales manager Jobs,Insurance sales manager Jobs in Delhi,Insurance sales manager Vacancy in Delhi,Insurance sales manager jobs in India, jobs in Delhi";i:3;s:214:"Apply for Insurance sales manager Jobs in Delhi India - Insurance sales manager Vacancy  in  field with 1 to 13 years Work Experience, Key Skills are Insurance sales manager, sales management,  jobs in Delhi  India";i:4;s:2390:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Insurance sales manager",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "Apollo Munich Health Insurance",
	        "value":  "746981"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "Apollo Munich Health Insurance",
	      "description": "Quality healthcare and Apollo have become synonymous in the Indian subcontinent, a fact reiterated by global healthcare experts and international accreditation bodies. Committed to bring world class health care within the reach of every individual, Apollo Hospitals Group has joined hands with Munich Health, a world leader in the field of health insurance.",
	      "telephone" : "",
	      "email" : "hr.akssolutions@gmail.com"  
	       },
		  "url": "http://www.akssolutionsgroup.com/job-openings-for-insurance-sales-manager-east-delhi-delhi-746981.htm",
          "datePosted": "2020-02-11",
          
		  "baseSalary": " 2  Lac  25 Thousand  To  3  Lac ",
		  "description": "JOB PROFILE

Position	UM / ADM / Sr. ADM	Location	
Reports to	Branch Manager	Category	Agency

Our Vision	To be the trusted leader in Health insurance by providing innovative solutions to the citizens of India
Our Mission	•	Constantly introduce innovative health insurance & wellness solutions that meet customer needs
•	Build an organization on the principles of transparency, trust and integrity
•	Create opportunities for our employees to learn and grow in an enjoyable work culture
•	Constantly deliver on our commitments to all our stakeholders
Our Values	•	Inspiring Passion
•	Delivering on our promises
•	Being responsive to our customers
•	Managing relationships
•	Thinking & Acting transparently	Our Principles	•	Compassionate
•	Accountable
•	Responsive
•	Expert",
		  "educationRequirements": "Other Bachelor Degree",
		  "experienceRequirements": "1 - 13 Years",
		  "industry": "",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Delhi/NCR",
		      "addressRegion": "Delhi, East Delhi"
		    }
		  },
		 "qualifications": "Other Bachelor Degree",
		     "skills": "Insurance sales manager, sales management"
		  }
		</script>
		";i:5;N;}