a:6:{i:0;s:8369:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Digital Marketing Executive</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.freeworkindia.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.freeworkindia.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Digital Marketing Executive</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> 0 - 3 Years</p>
				
									<p class="mb10px"><i class="fa fa-map-marker mr7px fl pl1px w15px alpha50"></i>Ghaziabad</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="858118">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="873321"><input type="hidden" name="subject" value="Applied for Digital Marketing Executive">
					</form>
					</div>
			
						
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Job Description</p>
				<p class="aj mt10px">Responsibilities and Duties<br />
<br />
Generating quality leads through emails and social media platforms.<br />
<br />
Create mobile-friendly and catchy email templates<br />
<br />
Identify the target audience and grow our email list<br />
<br />
Sending bulk emails to potential clients<br />
<br />
Proofread and edit emails for spelling and clarity.<br />
<br />
Provide effective results, when working independently or in a team.<br />
<br />
Keep track of the leads<br />
<br />
Skills required<br />
<br />
Hands on experience in social media marketing<br />
<br />
Ability to audit and analyse Company website pages<br />
<br />
Experience in on-page and off-page SEO<br />
<br />
Proficiency with SMO/SMM (Facebook, Twitter, LinkedIn, Google Plus, etc.)<br />
<br />
Should be well versed with HTML<br />
<br />
Experienced in managing blogs, guest posts, press releases and social media spaces<br />
<br />
Qualification in Computer Science Preferred<br />
<br />
Roles & responsibility<br />
<br />
Responsibilities and Duties<br />
<br />
Monitoring and Analysing Company Website pages<br />
<br />
Working on off-page and on-page SEO of website<br />
<br />
Planning and Performing SMM activities<br />
<br />
managing blogs, guest posts, press release and social media spaces.</p>
				
				<table class="w100 formTable bdr0 mt10px">				
											<tr>
							<td class="w22 alpha75 p5px">Salary</td>
							<td class="p5px"> 1  Lac  75 Thousand  To  2  Lac  50 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="w22 alpha75 p5px">Industry</td>
					<td class="p5px">IT Software - Application Programming / Maintenance</td>
					</tr>
									<tr>
				<td class="w22 alpha75 p5px">Work Experience</td>
				<td class="p5px">0 - 3 Years</td>
				</tr>
									<tr>
					<td class="w22 alpha75 p5px">Qualification</td>
					<td class="p5px">Other Bachelor Degree, B.A, B.Arch, B.C.A, B.B.A, B.Com, B.Ed, Other Master 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">Digital Marketing</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> SEO</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> SMO</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> Internet Marketing</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> Online Marketing</span>
											</div>
									</div>
				
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Company Profile</p>
				<div class="mt10px">
				
									<table class="w100 formTable bdr0 mt5px">
											<tr>
						<td class="w22 alpha75 p5px">Contact Person</td>
						<td class="p5px">Mr. Gagan sharma</td>
						</tr>					
												<tr>
						<td class="w22 alpha75 p5px">Mobile </td>
						<td class="p5px">9958229227 </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="858118">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="873321"><input type="hidden" name="subject" value="Applied for Digital 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="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-delhi.htm" title="Jobs in Delhi">Delhi</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-ghaziabad.htm" title="Jobs in Ghaziabad">Ghaziabad</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-gurgaon.htm" title="Jobs in Gurgaon">Gurgaon</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="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-application-programming-fid.htm" title="IT Software - Application Programming / Maintenance Jobs">IT Software - Application Programming / Maintenance</a> <b class="alpha50 bn small">(4)</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: 'aUJ5bjBNOTdnQzZPT1lDVk9TdU52dz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:110:"Digital Marketing Executive Jobs in Ghaziabad - Vacancy in IT Software - Application Programming / Maintenance";i:2;s:239:"Digital Marketing Executive Jobs,Digital Marketing Executive Jobs in Ghaziabad,Digital Marketing Executive Vacancy in Ghaziabad,Digital Marketing Executive jobs in India,IT Software - Application Programming / Maintenance jobs in Ghaziabad";i:3;s:355:"Apply for Digital Marketing Executive Jobs in Ghaziabad India - Digital Marketing Executive Vacancy  in IT Software - Application Programming / Maintenance field with 0 to 3 years Work Experience, Key Skills are Digital Marketing, SEO, SMO, Internet Marketing, Online Marketing, IT Software - Application Programming / Maintenance jobs in Ghaziabad  India";i:4;s:1954:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Digital Marketing Executive",
		  "baseSalary": " 1  Lac  75 Thousand  To  2  Lac  50 Thousand ",
		  "description": "Responsibilities and Duties

Generating quality leads through emails and social media platforms.

Create mobile-friendly and catchy email templates

Identify the target audience and grow our email list

Sending bulk emails to potential clients

Proofread and edit emails for spelling and clarity.

Provide effective results, when working independently or in a team.

Keep track of the leads

Skills required

Hands on experience in social media marketing

Ability to audit and analyse Company website pages

Experience in on-page and off-page SEO

Proficiency with SMO/SMM (Facebook, Twitter, LinkedIn, Google Plus, etc.)

Should be well versed with HTML

Experienced in managing blogs, guest posts, press releases and social media spaces

Qualification in Computer Science Preferred

Roles & responsibility

Responsibilities and Duties

Monitoring and Analysing Company Website pages

Working on off-page and on-page SEO of website

Planning and Performing SMM activities

managing blogs, guest posts, press release and social media spaces.",
		  "educationRequirements": "Other Bachelor Degree, B.A, B.Arch, B.C.A, B.B.A, B.Com, B.Ed, Other Master Degree",
		  "experienceRequirements": "0 - 3 Years",
		  "industry": "IT Software - Application Programming / Maintenance",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Delhi/NCR, Uttar Pradesh",
		      "addressRegion": "Ghaziabad"
		    }
		  },
		 "qualifications": "Other Bachelor Degree, B.A, B.Arch, B.C.A, B.B.A, B.Com, B.Ed, Other Master Degree",
		     "skills": "Digital Marketing, SEO, SMO, Internet Marketing, Online Marketing"
		  }
		</script>
		";i:5;N;}