a:6:{i:0;s:13775:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for business development executive in noida</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.integralhrservices.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.integralhrservices.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for business development executive in noida</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="dt w100">
				<div class="dtc">
				<div class="xxxlarge fw6 dif">Business Development Executive</div>
									<p class="mt7px fw6">Noida</p>
								
				</div>
				<div class="dtc w125px"><div class="mt7px">
									
					<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="869613">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="1017946"><input type="hidden" name="subject" value="Applied for Business Development Executive">
					</form>
			
									</div></div>
				</div>
								<br />
				<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-53d0b0627cb3c661"></script>
				<div class="fo">
				<div class="addthis_sharing_toolbox dib vam mr10px"></div>
				<a href="https://www.integralhrservices.com/vacancy_1017946.rss" target="_blank" class="p5px15px dib c3px" style="background:#f8991b;color:#ffffff;"><i class="fa fa-feed"></i> RSS Feed </a>
				</div>
				<br>
				<p class="aj mt7px">Lead Generation(ERP)<br />
<br />
 Responsible for achieving quarterly lead goals.<br />
<br />
Should have ERP core - erp sales experience.-Mandatory.<br />
<br />
Schedule software demo through calls & other channels.<br />
<br />
Managing all demo lineups for demo schedule. <br />
<br />
Also the candidate should have client coordination ability. <br />
<br />
 Probably we can look at candidates having software services experience<br />
<br />
Doing cold calls and generating leads or other strategies.<br />
<br />
Calling existing and potential customers to purchase company products and services.<br />
<br />
Accurately recording details of customers’ leads.<br />
<br />
Generating promising leads for the outside sales team to pursue.<br />
<br />
Using sales scripts proffered by the company to drive sales and respond to customers.<br />
<br />
Developing in-depth knowledge of customer products and services to make suitable recommendations based on customers' needs and preferences.</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">1 - 5 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 3  Lac  To  6  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">Diploma, B.C.A, B.Tech/B.E, M.C.A, M.Tech</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Direct Marketing</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Business Development</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Key Account Management</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Lead Generation</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Client Relationship Management</span>
												<span class="bdr dib p2px10px mr5px mt2px"></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">INTEGRAL RECRUITMENT SERVICES PVT LTD</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">We have recruitment consultancy office in Meerut. We recruit experienced professional candidates in companies and organizations according to the requirement of companies and organizations.</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">Nitin Goel</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">8532073537 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:integraljobs1@gmail.com"> integraljobs1@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="869613">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="1017946"><input type="hidden" name="subject" value="Applied for Business Development Executive">
					</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-meerut.htm" title="Jobs in Meerut">Meerut</a> <b class="alpha50 bn small">(36)</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">(18)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-gurgaon.htm" title="Jobs in Gurugram">Gurugram</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-ghaziabad.htm" title="Jobs in Ghaziabad">Ghaziabad</a> <b class="alpha50 bn small">(3)</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">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-karnal.htm" title="Jobs in Karnal">Karnal</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-roorkee.htm" title="Jobs in Roorkee">Roorkee</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-baghpat.htm" title="Jobs in Baghpat">Baghpat</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-muzaffarnagar.htm" title="Jobs in Muzaffarnagar">Muzaffarnagar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-saharanpur.htm" title="Jobs in Saharanpur">Saharanpur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-shamli.htm" title="Jobs in Shamli">Shamli</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></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">(18)</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">(8)</span><a href="jobs-in-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</a></p>
										<p class="mb5px "><span class="fr">(7)</span><a href="jobs-in-health-care-pharmaceuticals-medical-fid.htm" title="Health Care / Pharmaceuticals / Medical Jobs">Health Care / Pharmaceuticals ...</a></p>
										<p class="mb5px "><span class="fr">(6)</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">(5)</span><a href="jobs-in-hr-recruitment-administration-ir-training-development-operations-fid.htm" title="HR / Recruitment / Administration / IR / Training & Development / Operations Jobs">HR / Recruitment / Administrat...</a></p>
										<p class="mb5px "><span class="fr">(4)</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">(4)</span><a href="jobs-in-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Q...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-front-office-reception-computer-operator-assistant-fid.htm" title="Front Office / Reception/Computer Operator/Assistant Jobs">Front Office / Reception/Compu...</a></p>
										<p class="mb5px "><span class="fr">(2)</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">(2)</span><a href="jobs-in-property-construction-fid.htm" title="Real Estate / Construction Jobs">Real Estate / Construction</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 spanlist dn"><span class="fr">(1)</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 spanlist dn"><span class="fr">(1)</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 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-engineering-design-rd-quality-fid.htm" title="Engineering/ Engineering Design / R&D / Quality Jobs">Engineering/ Engineering Desig...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-advertisement-marketing-fid.htm" title="Marketing / Advertising / PR / Media Planning Jobs">Marketing / Advertising / PR /...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-supply-chain-purchase-procurement-fid.htm" title="Supply Chain / Purchase / Procurement Jobs">Supply Chain / Purchase / Proc...</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: 'VDFWUm9XMFVsU2dTczFkbzh0T1hzQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:98:"Job openings for business development executive in noida | INTEGRAL RECRUITMENT SERVICES PVT. LTD.";i:2;s:239:"Business Development Executive Jobs,Business Development Executive Jobs in Noida,Business Development Executive Vacancy in Noida,Business Development Executive jobs in India,Sales & Marketing / Business Development/telecaller jobs in Noida";i:3;s:400:"Apply for Business Development Executive Jobs in Noida India - Business Development Executive Vacancy  in Sales & Marketing / Business Development/telecaller field with 1 to 5 years Work Experience, Key Skills are Direct Marketing, Business Development, Key Account Management, Lead Generation, Client Relationship Management,, Sales & Marketing / Business Development/telecaller jobs in Noida  India";i:4;s:2451:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Business Development Executive",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "INTEGRAL RECRUITMENT SERVICES PVT LTD",
	        "value":  "1017946"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "INTEGRAL RECRUITMENT SERVICES PVT LTD",
	      "description": "We have recruitment consultancy office in Meerut. We recruit experienced professional candidates in companies and organizations according to the requirement of companies and organizations.",
	      "telephone" : "8532073537",
	      "email" : "integraljobs1@gmail.com"  
	       },
		  "url": "https://www.integralhrservices.com/job-openings-for-business-development-executive-noida-1017946.htm",
          "datePosted": "2022-05-31",
          
		  "baseSalary": " 3  Lac  To  6  Lac ",
		  "description": "Lead Generation(ERP)

 Responsible for achieving quarterly lead goals.

Should have ERP core - erp sales experience.-Mandatory.

Schedule software demo through calls & other channels.

Managing all demo lineups for demo schedule. 

Also the candidate should have client coordination ability. 

 Probably we can look at candidates having software services experience

Doing cold calls and generating leads or other strategies.

Calling existing and potential customers to purchase company products and services.

Accurately recording details of customers’ leads.

Generating promising leads for the outside sales team to pursue.

Using sales scripts proffered by the company to drive sales and respond to customers.

Developing in-depth knowledge of customer products and services to make suitable recommendations based on customers' needs and preferences.",
		  "educationRequirements": "Diploma, B.C.A, B.Tech/B.E, M.C.A, M.Tech",
		  "experienceRequirements": "1 - 5 Years",
		  "industry": "Sales & Marketing / Business Development/telecaller",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Uttar Pradesh",
		      "addressRegion": "Noida"
		    }
		  },
		 "qualifications": "Diploma, B.C.A, B.Tech/B.E, M.C.A, M.Tech",
		     "skills": "Direct Marketing, Business Development, Key Account Management, Lead Generation, Client Relationship Management,"
		  }
		</script>
		";i:5;N;}