a:6:{i:0;s:11116:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for bde in noida</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.starconsultancyservices.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.starconsultancyservices.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for bde 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="xxxlarge fw6 dif">BDE</div>
									<p class="mt7px fw6">Noida</p>
									
				<br>
				<p class="aj mt7px">We are Hiring TELE SALES EXECUTIVE / TELE SALES OFFICER/ TELE<br />
CALLERS for our organization,<br />
Exp : 1 - 3 Years<br />
Location : Noida<br />
1.Meeting prospects and clients interested in properties to offer them IT Sales.<br />
2..Leading a team of inside sales executive for Lead Generation.<br />
3. Understanding client's needs/requirements and educate them accordingly.<br />
4. Able to generate the leads and make it into conversion.<br />
5. Ability to arrange meetings & with the help of seniors try to get close max to max.<br />
6. Motivating and encouraging team members.<br />
7. Building of the client relationship and client servicing.<br />
8. Work as a consultant to the client and offering them recommended services and<br />
solutions.<br />
<br />
9. Give greed to clients and make healthy relationships with them.<br />
Responsibilities and Duties<br />
 Develop business for the company via tele sales to customers <br />
 Come up with a list of potential customers and vendors for the company via<br />
google search / just dial, Trdae india etc sources<br />
 Call customers on regular basis and generate leads<br />
 Engage customers via Sales Executives, send profiles and follow up regularly<br />
 With Clients, understand their offerings, call them to office for a visit and explain<br />
them the product and how they will get benefitted working with us.<br />
 Meet targets on a monthly basis<br />
Duties and Responsibility:<br />
 Should have Excellent Communication Skills and Convincing Power.<br />
 Fluent in English.<br />
 Should be able to work with a Team<br />
 Good at Computers.<br />
 Male/Female Candidates Only.<br />
 explain the customers - based on product offers / benefits<br />
 promoting the products<br />
 customer follow-up<br />
 feedback - mails/phones ( communication channel)<br />
 Prepare a list of calls made by the staff department wise and send the same to<br />
HOD<br />
 Advises present or prospective customers by answering incoming calls on a<br />
rotating basis.<br />
 Influences customers to buy or retain product or service by following a prepared<br />
script to give product reference information.<br />
 Maintains database by</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">1 - 3 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 1  Lac  To  2  Lac  25 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">IT Software - Ecommerce / Internet Technologies</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">Sales Associate</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Sales</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Marketing Executive</span>
												<span class="bdr dib p2px10px mr5px mt2px"> business development executive</span>
												<span class="bdr dib p2px10px mr5px mt2px"> sales executive</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">nishant bhatia</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9990179508 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:starcunsaltencyservices@gmail.com"> starcunsaltencyservices@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="726745">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="936911"><input type="hidden" name="subject" value="Applied for BDE">
					</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-noida.htm" title="Jobs in Noida">Noida</a> <b class="alpha50 bn small">(13)</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">(11)</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">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-jamui.htm" title="Jobs in Jamui">Jamui</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-vikas-puri-delhi.htm" title="Jobs in Vikas Puri">Vikas Puri</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-jhandewalan-delhi.htm" title="Jobs in Jhandewalan">Jhandewalan</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-janakpuri-delhi.htm" title="Jobs in Janakpuri">Janakpuri</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">(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">(5)</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">(4)</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">(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">(1)</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-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-education-teaching-training-counselling-fid.htm" title="Education / Teaching / Training / Counselling / Academic Jobs">Education / Teaching / Trainin...</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-ecommerce-internet-marketing-fid.htm" title="IT Software - Ecommerce / Internet Technologies Jobs">IT Software - Ecommerce / Inte...</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>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-biotech-scientist-fid.htm" title="Pharma / R&D / Biotech Jobs">Pharma / R&D / Biotech</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: 'OTdzNUlkcDZnWktWVEkxZ3JSZnhkUT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:57:"Job openings for bde in noida | Star Consultancy Services";i:2;s:127:"BDE Jobs,BDE Jobs in Noida,BDE Vacancy in Noida,BDE jobs in India,IT Software - Ecommerce / Internet Technologies jobs in Noida";i:3;s:318:"Apply for BDE Jobs in Noida India - BDE Vacancy  in IT Software - Ecommerce / Internet Technologies field with 1 to 3 years Work Experience, Key Skills are Sales Associate, Sales, Marketing Executive, business development executive, sales executive, IT Software - Ecommerce / Internet Technologies jobs in Noida  India";i:4;s:2794:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "BDE",
		  "baseSalary": " 1  Lac  To  2  Lac  25 Thousand ",
		  "description": "We are Hiring TELE SALES EXECUTIVE / TELE SALES OFFICER/ TELE
CALLERS for our organization,
Exp : 1 - 3 Years
Location : Noida
1.Meeting prospects and clients interested in properties to offer them IT Sales.
2..Leading a team of inside sales executive for Lead Generation.
3. Understanding client's needs/requirements and educate them accordingly.
4. Able to generate the leads and make it into conversion.
5. Ability to arrange meetings & with the help of seniors try to get close max to max.
6. Motivating and encouraging team members.
7. Building of the client relationship and client servicing.
8. Work as a consultant to the client and offering them recommended services and
solutions.

9. Give greed to clients and make healthy relationships with them.
Responsibilities and Duties
 Develop business for the company via tele sales to customers 
 Come up with a list of potential customers and vendors for the company via
google search / just dial, Trdae india etc sources
 Call customers on regular basis and generate leads
 Engage customers via Sales Executives, send profiles and follow up regularly
 With Clients, understand their offerings, call them to office for a visit and explain
them the product and how they will get benefitted working with us.
 Meet targets on a monthly basis
Duties and Responsibility:
 Should have Excellent Communication Skills and Convincing Power.
 Fluent in English.
 Should be able to work with a Team
 Good at Computers.
 Male/Female Candidates Only.
 explain the customers - based on product offers / benefits
 promoting the products
 customer follow-up
 feedback - mails/phones ( communication channel)
 Prepare a list of calls made by the staff department wise and send the same to
HOD
 Advises present or prospective customers by answering incoming calls on a
rotating basis.
 Influences customers to buy or retain product or service by following a prepared
script to give product reference information.
 Maintains database by",
		  "educationRequirements": "Other Bachelor Degree",
		  "experienceRequirements": "1 - 3 Years",
		  "industry": "IT Software - Ecommerce / Internet Technologies",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Uttar Pradesh",
		      "addressRegion": "Noida"
		    }
		  },
		 "qualifications": "Other Bachelor Degree",
		     "skills": "Sales Associate, Sales, Marketing Executive, business development executive, sales executive"
		  }
		</script>
		";i:5;N;}