a:6:{i:0;s:10843:"				<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="h1"><h1>Job openings for Online Marketing in Surat</h1></div>
					<p class="breadcrumb ar uu small"> <a href="https://www.anavilplacements.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.anavilplacements.in/recent-jobs.htm" title="Recent Jobs">Recent Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for Online Marketing in Surat</p>
									<div class="pt10px">
				<div class="dt w100">
				<div class="dtc">
				<div class="xxxlarge fw6 dif lh13em">Online Product Marketing Executive</div>
									<p class="mt7px fw6">Surat</p>
								
				</div>
				<div class="dtc w200px ar">
				<div class="ShareDropdown dib">	
				<div class="copyLinkPopup">Link Copied</div>		  
				<span class="data"><i class="fa fa-share-alt xxlarge vam"></i></span>
				<ul class="shareList data bdr0">
				<li><a target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=https://www.anavilplacements.in/job-openings-for-online-marketing-surat-994765.htm" class="facebook" title="Facebook"><i class="fa fa-facebook-official"></i></a></li> 
				<li><a target="_blank" href="https://www.instagram.com/?url=https://www.anavilplacements.in/job-openings-for-online-marketing-surat-994765.htm" class="instagram" title="Instagram"><i class="fa fa-instagram"></i></a></li>
				<li><a target="_blank" href="https://wa.me/?text=https://www.anavilplacements.in/job-openings-for-online-marketing-surat-994765.htm" class="whatsapp" title="Whatsapp"><i class="fa fa fa-whatsapp"></i></a></li>  
				<li><a target="_blank" href="https://X.com/intent/tweet?text=Online Product Marketing Executive&url=https://www.anavilplacements.in/job-openings-for-online-marketing-surat-994765.htm" class="twitter" title="Twitter"><img src="https://catalog.wlimg.com/mobile/social-networking-img/1002.svg" alt="Twitter" style="width:22px;height:22px;vertical-align:middle;margin-right:6px;"></a></li> 
				<li><a target="_blank" href="https://www.linkedin.com/shareArticle?mini=true&url=https://www.anavilplacements.in/job-openings-for-online-marketing-surat-994765.htm&title=Online Product Marketing Executive" class="linkedin" title="Linkedin"><i class="fa fa-linkedin-square"></i></a></li>
				<li><a target="_blank" href="https://pinterest.com/pin/create/button/?url=https://www.anavilplacements.in/job-openings-for-online-marketing-surat-994765.htm&description=Online Product Marketing Executive" class="pinterest" title="Pinterest"><i class="fa fa-pinterest-square"></i></a></li>	
				<li><a href="javascript:;" title="Copy Link" class="copy" onclick="copyURL()"><i class="fa fa-clone"></i></a></li>
				</ul>
				</div>
				<script>
				$(document).ready(function(){
				$('.ShareDropdown span').click(function(){
				 $('.ShareDropdown').toggleClass("active");
				}); 
				});
				</script>
				<script>
				  function copyURL() {
				    const url = window.location.href;
					const textarea = document.createElement("textarea");
					textarea.value = url;
					textarea.style.position = "fixed";
					document.body.appendChild(textarea);
					textarea.focus();
					textarea.select();
			
					try {
					  document.execCommand("copy");
					//  alert("URL copied (fallback)!");
					  $(".copyLinkPopup").show();		 
			          setTimeout(function(){$(".copyLinkPopup").hide();}, 2000);
				      $('.ShareDropdown').removeClass("active");
					  
					} catch (err) {
					  console.error("Fallback copy failed:", err);
					}
			
					document.body.removeChild(textarea);
				  }
				</script>
				<div class="mt7px ml7px dib">
									
					<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="672541">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="994765"><input type="hidden" name="subject" value="Applied for Online Product Marketing Executive">
					</form>
			
									</div></div>
				</div>
								<div class="fo mt10px">
				<a href="https://www.anavilplacements.in/vacancy_994765.rss" target="_blank" class="p5px15px dib c3px" style="background:#f8991b;color:#ffffff;"><i class="fa fa-feed"></i> RSS Feed </a>
				</div>
				<br>
				<p class="aj mt7px lh18em">Job Description :  Online Product Marketing <br />Salary: 15K to 20K<br />> Handling the clients on social media through only chatting and should have online selling skills in latest marketing technologies and social media.<br />> Develop Strong And Innovative Digital Marketing Strategies.<br />> Good Convincing Skills.<br />> Good Negotiation Skills.<br />> Good Communication Skill.<br />> Must Have 6 Months Experience In Social Media Marketing.<br />> Product : Diamond<br />> No SEO and SEM and Pure IT field field experienced candidate are not required<br />> Only Online Product marketing and selling experienced candidate are required<br />> Any product they are selling and marketing doesn't matter<br />> But Only online product selling and marketing experienced candidate<br />No phone calls and No face to face meeting. Only Chatting</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">0 - 1 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 1  Lac  75 Thousand  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">12th Pass</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
												<span class="bdr dib p2px10px mr5px mt2px">Online Marketing</span>
														<span class="bdr dib p2px10px mr5px mt2px">Digital Marketing</span>
														<span class="bdr dib p2px10px mr5px mt2px">Social Media Marketing</span>
														<span class="bdr dib p2px10px mr5px mt2px">SEO</span>
														<span class="bdr dib p2px10px mr5px mt2px">SEM</span>
														<span class="bdr dib p2px10px mr5px mt2px">Internet Marketing</span>
														<span class="bdr dib p2px10px mr5px mt2px">Online Branding</span>
														<span class="bdr dib p2px10px mr5px mt2px">Walk in</span>
												</td>
					</tr>
									
				</table>
				</div>
				<br>
				<div>
				<!--p class="large fw6">About Company</p-->
				<div>
				
								
				<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="672541">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="994765"><input type="hidden" name="subject" value="Applied for Online Product 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="https://www.anavilplacements.in/jobs-in-surat.htm" title="Jobs in Surat">Surat</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="https://www.anavilplacements.in/jobs-in-ahmedabad.htm" title="Jobs in Ahmedabad">Ahmedabad</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="https://www.anavilplacements.in/jobs-in-navsari.htm" title="Jobs in Navsari">Navsari</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">(3)</span><a href="https://www.anavilplacements.in/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">(3)</span><a href="https://www.anavilplacements.in/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">(2)</span><a href="https://www.anavilplacements.in/jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxati...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="https://www.anavilplacements.in/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="https://www.anavilplacements.in/jobs-in-sales-marketing-business-development-telecaller-fid.htm" title="Sales & Marketing / Business Development / Telecaller Jobs">Sales & Marketing / Business D...</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>
				
	<?php
	$source_type="";
	if (!empty($_REQUEST["utm_campaign"]) && ($_REQUEST["utm_campaign"]=="google_jobs_apply" || $_REQUEST["utm_campaign"]=="JobApplyPI")) {
		$source_type=$_REQUEST["utm_campaign"];
	}
	?>
	";i:1;s:62:"Job openings for Online Marketing in Surat | Anavil Placements";i:2;s:251:"Online Product Marketing Executive Jobs,Online Product Marketing Executive Jobs in Surat,Online Product Marketing Executive Vacancy in Surat,Online Product Marketing Executive jobs in India,IT Software - Ecommerce / Internet Technologies jobs in Surat";i:3;s:396:"Apply for Online Product Marketing Executive Jobs in Surat India - Online Product Marketing Executive Vacancy  in IT Software - Ecommerce / Internet Technologies field with 0 to 1 years Work Experience, Key Skills are Online Marketing,Digital Marketing,Social Media Marketing,SEO,SEM,Internet Marketing,Online Branding,Walk in, IT Software - Ecommerce / Internet Technologies jobs in Surat  India";i:4;s:2243:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Online Product Marketing Executive",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "Anavil Placements",
	        "value":  "994765"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "Anavil Placements",
	      "description": "Anavil Placements is a placement firm and manpower recruitment consultants in Surat (Gujarat, India). Our company is specialized in providing manpower hunting and recruitment of desirable & qualified candidates to our client companies. The candidates are sent for the interview for a specific job profile after going through the screening and testing procedure with us. Our methods of assessing the aspirants are innovative. Thus, companies rely on us for their recruitment drives. With a strong vision of expanding our services across diverse sectors, our company currently maintains an honest and client-centric approach. Our mission is not just to earn profits but to eliminate unemployment from the society. We fill job vacancies for junior, middle, and higher level profiles.",
	      "telephone" : "9106551624",
	      "email" : "hr.dakhseshnaik@gmail.com"  
	       },
		  "url": "https://www.anavilplacements.in/job-openings-for-online-marketing-surat-994765.htm",
          "datePosted": "2025-07-12",
          
		  "baseSalary": " 1  Lac  75 Thousand  To  2  Lac  25 Thousand ",
		  "description": "Job Description :  Online Product Marketing rnrnSalary: 15K to 20Krn rn> Handling the clients on social media through only chatting and should have online selling skills in latest marketing technologi",
		  "educationRequirements": "12th Pass",
		  "experienceRequirements": "0 - 1 Years",
		  "industry": "IT Software - Ecommerce / Internet Technologies",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Gujarat",
		      "addressRegion": "Surat"
		    }
		  },
		 "qualifications": "12th Pass",
		     "skills": "Online Marketing,Digital Marketing,Social Media Marketing,SEO,SEM,Internet Marketing,Online Branding,Walk in"
		  }
		</script>
		";i:5;N;}