a:6:{i:0;s:7982:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for business development executive in south delhi delhi</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.aandpenterprises.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.aandpenterprises.in/recent-jobs.htm" title="Recent Jobs">Recent Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for business development executive in south 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">Sales Business Development</div>
									<p class="mt7px fw6">Delhi, South Delhi</p>
									
				<br>
				<p class="aj mt7px">Job Description<br />
<br />
Develop and maintain strategic long term trusting relationships with high volume customers to accomplish organic growth<br />
Communicate company products and services via Calling and E-mail and also build relationships in order to uncover prospect needs<br />
Document and update CRM with daily activities as required<br />
Achieve weekly and monthly goals<br />
Be a self starter and pro-active; identify and act on opportunities for improvement<br />
Ensure reporting and communications is frequent and bi-diectional<br />
Remain knowledgeable about all organization’s products and services to facilitate sales efforts<br />
Completing input numbers on daily basis and taking up revenue responsibility<br />
To research and analyze the customer’s requirements and present best solutions<br />
Keep abreast with Extramarks latest offerings and best practices<br />
Research key customer wants and needs Selection process<br />
There are three rounds for the selection process:<br />
Aptitude Test<br />
Personal Interview - 1st Round<br />
Personal Interview - 2nd Round</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">1 - 7 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 3  Lac  To  5  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Sales & Marketing / Business Development/telecaller</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">Business Development Executive</span>
												<span class="bdr dib p2px10px mr5px mt2px"> sales</span>
												<span class="bdr dib p2px10px mr5px mt2px"> marketing</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">Contact Person</td>
						<td class="p5px">Mr. Vikas Harichandra Surve</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">102, Shree Mayuresh Appartment, Kharigaon, Pakhadi, Near Shubhangi Appartment, Kalwa Dist Thane</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">8999157841 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:vikassurve1965@gmail.com"> vikassurve1965@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="583568">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="921703"><input type="hidden" name="subject" value="Applied for Sales Business Development">
					</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">(3)</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-delhi.htm" title="Jobs in Delhi">Delhi</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>
									</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">(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">(2)</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">(1)</span><a href="jobs-in-public-relation-pr-advertising-events-fid.htm" title="Public Relation (PR) /  Advertising / Events Jobs">Public Relation (PR) /  Advert...</a></p>
										<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>
									
				</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: 'VFJsVlBBNDY5aUtjemkyMmV6cm1ZZz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:88:"Job openings for business development executive in south delhi delhi | A & P Enterprises";i:2;s:223:"Sales Business Development Jobs,Sales Business Development Jobs in Delhi,Sales Business Development Vacancy in Delhi,Sales Business Development jobs in India,Sales & Marketing / Business Development/telecaller jobs in Delhi";i:3;s:328:"Apply for Sales Business Development Jobs in Delhi India - Sales Business Development Vacancy  in Sales & Marketing / Business Development/telecaller field with 1 to 7 years Work Experience, Key Skills are Business Development Executive, sales, marketing, Sales & Marketing / Business Development/telecaller jobs in Delhi  India";i:4;s:1750:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Sales Business Development",
		  "baseSalary": " 3  Lac  To  5  Lac ",
		  "description": "Job Description

Develop and maintain strategic long term trusting relationships with high volume customers to accomplish organic growth
Communicate company products and services via Calling and E-mail and also build relationships in order to uncover prospect needs
Document and update CRM with daily activities as required
Achieve weekly and monthly goals
Be a self starter and pro-active; identify and act on opportunities for improvement
Ensure reporting and communications is frequent and bi-diectional
Remain knowledgeable about all organization’s products and services to facilitate sales efforts
Completing input numbers on daily basis and taking up revenue responsibility
To research and analyze the customer’s requirements and present best solutions
Keep abreast with Extramarks latest offerings and best practices
Research key customer wants and needs Selection process
There are three rounds for the selection process:
Aptitude Test
Personal Interview - 1st Round
Personal Interview - 2nd Round",
		  "educationRequirements": "Other Bachelor Degree",
		  "experienceRequirements": "1 - 7 Years",
		  "industry": "Sales & Marketing / Business Development/telecaller",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Delhi/NCR",
		      "addressRegion": "Delhi, South Delhi"
		    }
		  },
		 "qualifications": "Other Bachelor Degree",
		     "skills": "Business Development Executive, sales, marketing"
		  }
		</script>
		";i:5;N;}