a:6:{i:0;s:9427:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Sales Supporter - Kim Location</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 Supporter - Kim Location</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="898820"><input type="hidden" name="subject" value="Applied for Sales Supporter - Kim Location">
					</form>
					</div>
			
						
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Job Description</p>
				<p class="aj mt10px">We are Looking for An Organized, Efficient Sales Support Specialist to Be Responsible for Administrative Duties and Assisting the Sales Department in Gaining and Keeping Customers. <br />
<br />
the Sales Support Specialist's Responsibilities Include Tracking Sales Leads, Coordinating Quotes with Sales Packs, Providing Customer Service, and Managing Customer Accounts. the Sales Support Specialist is also Responsible for Monitoring Sales and the Performance of the Sales Team as Well as Recording Sales Data.<br />
<br />
to Be a Successful Sales Support Specialist, You Should have Good Time Management and Organizational Skills. You Should also Demonstrate Excellent Interpersonal, Communication, and Customer Service Skills.<br />
<br />
sales Support Specialist Responsibilities:<br />
<br />
-answering Customer Inquiries, Scheduling Meetings and Sales Appointments, and Following Up with Customers About Their Order Status.<br />
-compiling a Daily List of Sales Leads, Delegating Leads to the Sales Department, and Providing Sales Data and Guides to the Sales Department.<br />
-developing and Monitoring Performance Indicators for Sales and Staff Members, Managing Sales Tracking Tools, and Compiling Reports.<br />
-recording Sales Trends and Liaising with Account Managers to Develop Sales Strategies.<br />
-creating and Processing Orders in a Timely Manner, Processing Requests for Rush Orders, and <br />
  Reviewing Pending Orders and Customer Requests to Ensure Customer Satisfaction.<br />
- Managing Customer Accounts, Following Up with Customers for Administrative Purposes, and <br />
  Providing Troubleshooting Assistance for Orders, Account Statuses, and other Problems.<br />
- Performing Data Entry Tasks for Sales Figures, Metrics, and other Relevant Information and <br />
  Maintaining An Organized and Accessible Filing System.<br />
<br />
-handling Administrative Duties for the Company and Its Executives and Management Teams.<br />
-scheduling Customer Meetings and Conferences.<br />
- Reporting Any Unusual Activity to Your Supervisors.<br />
- Knowledge Computer Basic like Word, Power Points, Excel.</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, Diploma, Advanced/Higher Diploma, Professional Degree, Other Bachelor Degree, MD/Medicinae Doctor, Post Graduate Diploma</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">Direct Marketing</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="898820"><input type="hidden" name="subject" value="Applied for Sales Supporter - Kim Location">
					</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: 'Umc3NUdXU2w3ZHZ3NHg1UTU2R3Frdz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:73:"Sales Supporter - Kim Location Jobs in Surat - Vacancy in Sales/Marketing";i:2;s:203:"Sales Supporter - Kim Location Jobs,Sales Supporter - Kim Location Jobs in Surat,Sales Supporter - Kim Location Vacancy in Surat,Sales Supporter - Kim Location jobs in India,Sales/Marketing jobs in Surat";i:3;s:248:"Apply for Sales Supporter - Kim Location Jobs in Surat India - Sales Supporter - Kim Location Vacancy  in Sales/Marketing field with 2 to 5 years Work Experience, Key Skills are sales,marketing,Direct Marketing, Sales/Marketing jobs in Surat  India";i:4;s:2972:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Sales Supporter - Kim Location",
		  "baseSalary": "",
		  "description": "We are Looking for An Organized, Efficient Sales Support Specialist to Be Responsible for Administrative Duties and Assisting the Sales Department in Gaining and Keeping Customers. 

the Sales Support Specialist's Responsibilities Include Tracking Sales Leads, Coordinating Quotes with Sales Packs, Providing Customer Service, and Managing Customer Accounts. the Sales Support Specialist is also Responsible for Monitoring Sales and the Performance of the Sales Team as Well as Recording Sales Data.

to Be a Successful Sales Support Specialist, You Should have Good Time Management and Organizational Skills. You Should also Demonstrate Excellent Interpersonal, Communication, and Customer Service Skills.

sales Support Specialist Responsibilities:

-answering Customer Inquiries, Scheduling Meetings and Sales Appointments, and Following Up with Customers About Their Order Status.
-compiling a Daily List of Sales Leads, Delegating Leads to the Sales Department, and Providing Sales Data and Guides to the Sales Department.
-developing and Monitoring Performance Indicators for Sales and Staff Members, Managing Sales Tracking Tools, and Compiling Reports.
-recording Sales Trends and Liaising with Account Managers to Develop Sales Strategies.
-creating and Processing Orders in a Timely Manner, Processing Requests for Rush Orders, and 
  Reviewing Pending Orders and Customer Requests to Ensure Customer Satisfaction.
- Managing Customer Accounts, Following Up with Customers for Administrative Purposes, and 
  Providing Troubleshooting Assistance for Orders, Account Statuses, and other Problems.
- Performing Data Entry Tasks for Sales Figures, Metrics, and other Relevant Information and 
  Maintaining An Organized and Accessible Filing System.

-handling Administrative Duties for the Company and Its Executives and Management Teams.
-scheduling Customer Meetings and Conferences.
- Reporting Any Unusual Activity to Your Supervisors.
- Knowledge Computer Basic like Word, Power Points, Excel.",
		  "educationRequirements": "Higher Secondary, Secondary School, Vocational Course, Diploma, Advanced/Higher Diploma, Professional Degree, Other Bachelor Degree, MD/Medicinae Doctor, Post Graduate Diploma",
		  "experienceRequirements": "2 - 5 Years",
		  "industry": "Sales/Marketing",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Gujarat",
		      "addressRegion": "Surat"
		    }
		  },
		 "qualifications": "Higher Secondary, Secondary School, Vocational Course, Diploma, Advanced/Higher Diploma, Professional Degree, Other Bachelor Degree, MD/Medicinae Doctor, Post Graduate Diploma",
		     "skills": "sales,marketing,Direct Marketing"
		  }
		</script>
		";i:5;N;}