a:6:{i:0;s:8644:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Sales Supervisor</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.jenishfood.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.jenishfood.com/current-openings.htm" title="Current Openings">Current Openings</a>
																
					<b class="ffv p2px">&rsaquo;</b> Sales Supervisor</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-->
				
								<p class="mb5px"><i class="fa fa-briefcase mr7px fl w15px alpha50"></i> 2 - 5 Years</p>
				
									<p class="mb10px"><i class="fa fa-map-marker mr7px fl pl1px w15px alpha50"></i>Surat</p>
										
					<div>
					<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="898814"><input type="hidden" name="subject" value="Applied for Sales Supervisor">
					</form>
					</div>
			
						
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Job Description</p>
				<p class="aj mt10px">Job Description<br />
<br />
 (sales Supervisor)<br />
<br />
roles & Responsibilities:<br />
-experienced in Modern Retail, Distribution and Fmcg Sales & Marketing.<br />
-excellent Communication & Organizational Skills<br />
-must Be Target Oriented & Team Player<br />
-the Candidate Should Be Able to Work Under Pressure.<br />
-analyzing the Sales Performance and Solving the Problems<br />
-maintain Existing Customers Through Good Communication and Negotiation Skills<br />
-developing New Customers in the Designated Area, Maintain Good Relations with Current Customers.<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.<br />
- Track Revenue Growth for Top Customers Cluster Wise<br />
- Addressing Customer Complaints and Concerns and Resolving Them to Achieve Customer Satisfaction and in Turn Customer Delight.<br />
-ensuring Targeted Distribution & Display of Products as per Approved Promotional Plans<br />
-anchoring Achievement of Volume and Value Targets By Month , Qtr & Yearly<br />
-making a Daily Sales Report and Keeping a Log and Timely Reporting to the Senior Person.<br />
-maintain Secondary Sales Report and Timely Coordination with Distributors / Retailers for Placing Correct Order<br />
-follow Up for Order Delivery On Time.<br />
-ensure Regular Payment Follow-up and Collecting the Payment.</p>
				
				<table class="w100 formTable bdr0 mt10px">				
									<tr>
					<td class="w22 alpha75 p5px">Salary</td>
					<td class="p5px">Not Disclosed</td>
					</tr>
									
					<tr>
					<td class="w22 alpha75 p5px">Industry</td>
					<td class="p5px">Sales/Marketing</td>
					</tr>
									<tr>
				<td class="w22 alpha75 p5px">Work Experience</td>
				<td class="p5px">2 - 5 Years</td>
				</tr>
									<tr>
					<td class="w22 alpha75 p5px">Qualification</td>
					<td class="p5px">Higher Secondary, Secondary School, Vocational Course, Advanced/Higher Diploma, Professional Degree, Other Bachelor Degree</td>
					</tr>					
									
				</table>
				
				
				</div>
				
				<br>
				<div class="bdrT pt20px">
									<p class="xlarge b">Key Skills</p>
					<div class="mt10px dif">
											<span class="bn dib p5px10px c2px headVr mr7px mb7px">Sales</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px">marketing</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> business development</span>
											</div>
									</div>
				
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Company Profile</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="898814"><input type="hidden" name="subject" value="Applied for Sales Supervisor">
					</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="h h2"><b class="plusMinus"></b>
				<h2>Jobs by Location</h2>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr 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="h h2"><b class="plusMinus"></b>
				<h2>Jobs by Functional Area</h2>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxation</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-front-office-data-entry-fid.htm" title="Front Office / Executive Assistant / Data Entry Jobs">Front Office / Executive Assistant / Data Entry</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-advertisement-marketing-fid.htm" title="Marketing / Advertising / PR / Media Planning Jobs">Marketing / Advertising / PR / Media Planning</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-sales-marketing-fid.htm" title="Sales/Marketing Jobs">Sales/Marketing</a> <b class="alpha50 bn small">(5)</b></span>
									
				</div>
				</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: 'K2RQZVlaQjluQy80WmU3Zit3VUp4Zz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:59:"Sales Supervisor Jobs in Surat - Vacancy in Sales/Marketing";i:2;s:147:"Sales Supervisor Jobs,Sales Supervisor Jobs in Surat,Sales Supervisor Vacancy in Surat,Sales Supervisor jobs in India,Sales/Marketing jobs in Surat";i:3;s:225:"Apply for Sales Supervisor Jobs in Surat India - Sales Supervisor Vacancy  in Sales/Marketing field with 2 to 5 years Work Experience, Key Skills are Sales,marketing, business development, Sales/Marketing jobs in Surat  India";i:4;s:2190:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Sales Supervisor",
		  "baseSalary": "",
		  "description": "Job Description

 (sales Supervisor)

roles & Responsibilities:
-experienced in Modern Retail, Distribution and Fmcg Sales & Marketing.
-excellent Communication & Organizational Skills
-must Be Target Oriented & Team Player
-the Candidate Should Be Able to Work Under Pressure.
-analyzing the Sales Performance and Solving the Problems
-maintain Existing Customers Through Good Communication and Negotiation Skills
-developing New Customers in the Designated Area, Maintain Good Relations with Current Customers.
- Responsible for Managing the Entire Customer Base Registered in the Region and Increase Revenue per Customer, Reduce Revenue Leakages, Ensure High Customer Satisfaction Level.
- Track Revenue Growth for Top Customers Cluster Wise
- Addressing Customer Complaints and Concerns and Resolving Them to Achieve Customer Satisfaction and in Turn Customer Delight.
-ensuring Targeted Distribution & Display of Products as per Approved Promotional Plans
-anchoring Achievement of Volume and Value Targets By Month , Qtr & Yearly
-making a Daily Sales Report and Keeping a Log and Timely Reporting to the Senior Person.
-maintain Secondary Sales Report and Timely Coordination with Distributors / Retailers for Placing Correct Order
-follow Up for Order Delivery On Time.
-ensure Regular Payment Follow-up and Collecting the Payment.",
		  "educationRequirements": "Higher Secondary, Secondary School, Vocational Course, Advanced/Higher Diploma, Professional Degree, Other Bachelor Degree",
		  "experienceRequirements": "2 - 5 Years",
		  "industry": "Sales/Marketing",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Gujarat",
		      "addressRegion": "Surat"
		    }
		  },
		 "qualifications": "Higher Secondary, Secondary School, Vocational Course, Advanced/Higher Diploma, Professional Degree, Other Bachelor Degree",
		     "skills": "Sales,marketing, business development"
		  }
		</script>
		";i:5;N;}