a:6:{i:0;s:9475:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for marketing executive in mumbai</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.onepointplacement.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.onepointplacement.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for marketing executive in mumbai</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">Marketing Executive</div>
									<p class="mt7px fw6">Mumbai</p>
									
				<br>
				<p class="aj mt7px">Develop new Client /Customer base in Target Market Industries<br />
 Maintain Customer Satisfaction with existing customer base.<br />
 Generate New Inquiries and convert them into sales.<br />
 Submit offer do negotiation and close final deal<br />
 Coordinate between Client and Sales coordinator for smooth order<br />
processing<br />
 Increase Customer Base network for a company (Region/Industry<br />
Wise)<br />
 Provide DSR and MIS Report to Manager CC to Director on Daily<br />
/ Weekly basis respectively<br />
<br />
 Market Research :<br />
Data Mining<br />
 Creating List of companies in Industrial Areas by Field Visit,<br />
Customer’s competitor analysis, Industrial Directory<br />
<br />
 Business Development :<br />
 Traveling to Various Industrial Area’s, Meeting Potential<br />
Customer’s to introduce company and its profile.<br />
 Generate New Inquiries, Convert Orders and do follow up to<br />
achieve sales target<br />
<br />
 Payment :<br />
 Keeping a check on current payment outstanding to assure<br />
zero defaulters<br />
<br />
 Reporting :<br />
 Provide DSR and MIS Report on Daily ,Weekly basis<br />
respectively to Manager keeping Director in Loop</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">2 - 3 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">B.Tech/B.E, M.B.A/PGDM</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Develop new Client</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Target Market</span>
												<span class="bdr dib p2px10px mr5px mt2px">  Maintain Customer Satisfaction</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Business Development</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">Swastik Industrial Works</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">Swastik Industrial Works is a leading Manufacturer of STEEL FASTENERS Fastener. With a history of over Decades exceeding our customer expectations, SIW is now serving thousand of customers in India and around the world. . Every step, which has been taken to lead our Company into the new era of technology with increasing demands of the customers, we are proud to state that we have been a company, which has been growing since its establishment.

We carry a full line of STEEL FASTENERS Fastener Product like hex bolt, Screw, Washer, hast Alloy, Inconel, Monel, Duplex, with wide range of the product. We have been successful in catering to diverse industrial segments that includes Chemical, Petrochemical, Engineering, etc besides others. For most requirements, we offer shipment as per customers need.

Our Product Range:
Nuts and Bolts suppliers | Bolt STEEL FASTENERS | Aerospace fasteners | STEEL FASTENERS | Star stainless fasteners</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">Shashi Pillai</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9769411901 </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="819243">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="909516"><input type="hidden" name="subject" value="Applied for Marketing 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-mumbai.htm" title="Jobs in Mumbai">Mumbai</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-pune.htm" title="Jobs in Pune">Pune</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-ludhiana.htm" title="Jobs in Ludhiana">Ludhiana</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-navi-mumbai.htm" title="Jobs in Navi Mumbai">Navi Mumbai</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">(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-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-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-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Q...</a></p>
										<p class="mb5px "><span class="fr">(1)</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-engineering-design-rd-quality-fid.htm" title="Engineering/ Engineering Design / R&D / Quality Jobs">Engineering/ Engineering Desig...</a></p>
										<p class="mb5px "><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>
									
				</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: 'MWpndkE2Y0FKSUo0Q2x2NjFJeFJiQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:67:"Job openings for marketing executive in mumbai | OnePoint Placement";i:2;s:198:"Marketing Executive Jobs,Marketing Executive Jobs in Mumbai,Marketing Executive Vacancy in Mumbai,Marketing Executive jobs in India,Sales & Marketing / Business Development/telecaller jobs in Mumbai";i:3;s:356:"Apply for Marketing Executive Jobs in Mumbai India - Marketing Executive Vacancy  in Sales & Marketing / Business Development/telecaller field with 2 to 3 years Work Experience, Key Skills are Develop new Client, Target Market,  Maintain Customer Satisfaction, Business Development, Sales & Marketing / Business Development/telecaller jobs in Mumbai  India";i:4;s:1777:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Marketing Executive",
		  "baseSalary": "",
		  "description": "Develop new Client /Customer base in Target Market Industries
 Maintain Customer Satisfaction with existing customer base.
 Generate New Inquiries and convert them into sales.
 Submit offer do negotiation and close final deal
 Coordinate between Client and Sales coordinator for smooth order
processing
 Increase Customer Base network for a company (Region/Industry
Wise)
 Provide DSR and MIS Report to Manager CC to Director on Daily
/ Weekly basis respectively

 Market Research :
Data Mining
 Creating List of companies in Industrial Areas by Field Visit,
Customer’s competitor analysis, Industrial Directory

 Business Development :
 Traveling to Various Industrial Area’s, Meeting Potential
Customer’s to introduce company and its profile.
 Generate New Inquiries, Convert Orders and do follow up to
achieve sales target

 Payment :
 Keeping a check on current payment outstanding to assure
zero defaulters

 Reporting :
 Provide DSR and MIS Report on Daily ,Weekly basis
respectively to Manager keeping Director in Loop",
		  "educationRequirements": "B.Tech/B.E, M.B.A/PGDM",
		  "experienceRequirements": "2 - 3 Years",
		  "industry": "Sales & Marketing / Business Development/telecaller",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Maharashtra",
		      "addressRegion": "Mumbai"
		    }
		  },
		 "qualifications": "B.Tech/B.E, M.B.A/PGDM",
		     "skills": "Develop new Client, Target Market,  Maintain Customer Satisfaction, Business Development"
		  }
		</script>
		";i:5;N;}