a:6:{i:0;s:7349:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for salesman in surat</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.jenishfood.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.jenishfood.com/current-openings.htm" title="Current Openings">Current Openings</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for salesman in surat</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">Salesman Cum Driver - Highway Area</div>
									<p class="mt7px fw6">Surat</p>
									
				<br>
				<p class="aj mt7px">• Roles & Responsibilities:<br />
- Handle B2B sales to various Hotels, Restaurants, Industrial Caterers and Hospitality sector clients.<br />
- Regular calls and periodic meetings with clients to share product portfolio and understand changing or additional needs in tune with current market<br />
- To increase the profitability of the organization through Proactive Client Servicing and increasing basket size of clients.<br />
- Timely Account Reconciliation and ensuring timely payments from clients.<br />
-If required to Delivery & Payment Follow up.<br />
- Addressing customer complaints and concerns and resolving them to achieve customer satisfaction and in turn customer delight.<br />
- Track Revenue Growth for TOP customers cluster wise<br />
- Responsible for managing the entire customer base registered in the region and increase revenue per customer, reduce revenue leakages, ensure high customer satisfaction level.</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">Not Disclosed</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">Professional Degree, Other Bachelor Degree, MD/Medicinae Doctor, Post Graduate Diploma</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">sales</span>
												<span class="bdr dib p2px10px mr5px mt2px">Sales Coordinator</span>
												<span class="bdr dib p2px10px mr5px mt2px">Sales Assistant</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">
				
				Jenish Incorporation is a reliable manufacturer, supplier, and exporter of food products. The company was founded in Surat (Gujarat) back in the year 1994. We are known as a manufacturer, supplier, and exporter of jaljira powder, taste plus powder, pachak amla and many more. The company’s core values are the provision of excellent quality food items by satisfying all customers. Moreover, we also believe in upholding the commitment and improve the production method. We are visionary and aim at the various things 20 years from now and it includes annual growth by 50%. Furthermore, we also see ourselves as a global instigator in this industry with 50 branch offices in 7 Asian countries, manufacturing/supplying/exporting 150+ products, teams of 3000 deft professionals, annual turnover of 1,414 crores, and one toll-free number in every country.				
				<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="889733">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="887676"><input type="hidden" name="subject" value="Applied for Salesman cum Driver - Highway Area">
					</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-surat.htm" title="Jobs in Surat">Surat</a> <b class="alpha50 bn small">(8)</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">(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">(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 "><span class="fr">(1)</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-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxati...</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: 'M0NSMzBCUEV3RWg4dHJxREd1ZEsrZz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:57:"Job openings for salesman in surat | Jenish Incorporation";i:2;s:255:"Salesman cum Driver - Highway Area Jobs,Salesman cum Driver - Highway Area Jobs in Surat,Salesman cum Driver - Highway Area Vacancy in Surat,Salesman cum Driver - Highway Area jobs in India,Sales & Marketing / Business Development/telecaller jobs in Surat";i:3;s:345:"Apply for Salesman cum Driver - Highway Area Jobs in Surat India - Salesman cum Driver - Highway Area Vacancy  in Sales & Marketing / Business Development/telecaller field with 1 to 5 years Work Experience, Key Skills are sales,Sales Coordinator,Sales Assistant,marketing, Sales & Marketing / Business Development/telecaller jobs in Surat  India";i:4;s:1734:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Salesman cum Driver - Highway Area",
		  "baseSalary": "",
		  "description": "• Roles & Responsibilities:
- Handle B2B sales to various Hotels, Restaurants, Industrial Caterers and Hospitality sector clients.
- Regular calls and periodic meetings with clients to share product portfolio and understand changing or additional needs in tune with current market
- To increase the profitability of the organization through Proactive Client Servicing and increasing basket size of clients.
- Timely Account Reconciliation and ensuring timely payments from clients.
-If required to Delivery & Payment Follow up.
- Addressing customer complaints and concerns and resolving them to achieve customer satisfaction and in turn customer delight.
- Track Revenue Growth for TOP customers cluster wise
- Responsible for managing the entire customer base registered in the region and increase revenue per customer, reduce revenue leakages, ensure high customer satisfaction level.",
		  "educationRequirements": "Professional Degree, Other Bachelor Degree, MD/Medicinae Doctor, Post Graduate Diploma",
		  "experienceRequirements": "1 - 5 Years",
		  "industry": "Sales & Marketing / Business Development/telecaller",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Gujarat",
		      "addressRegion": "Surat"
		    }
		  },
		 "qualifications": "Professional Degree, Other Bachelor Degree, MD/Medicinae Doctor, Post Graduate Diploma",
		     "skills": "sales,Sales Coordinator,Sales Assistant,marketing"
		  }
		</script>
		";i:5;N;}