a:6:{i:0;s:8260:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for digital marketing executive work from home in hyderabad</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.namanjobplacement.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.namanjobplacement.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for digital marketing executive work from home in hyderabad</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">Digital Marketing Executive(Work From Home)</div>
									<p class="mt7px fw6">Hyderabad</p>
									
				<br>
				<p class="aj mt7px">Responsibilities:<br />
• Assist in the formulation of strategies to build a lasting digital connection in B2B and B2C environment.<br />
• Plan and monitor the ongoing company presence on social media (LinkedIn, Twitter, Facebook, etc.).<br />
• Launch optimized online adverts through Google AdWords, Facebook, etc. to increase company and brand awareness.<br />
• Be actively involved in SEO efforts (keyword, image optimization, etc.).<br />
• Prepare online newsletters and promotional emails and organize their distribution through various channels<br />
• Provide creative ideas for content marketing and in updating portal.<br />
• Collaborate with Designers to improve user experience – UI/UX.<br />
• Measure the performance of digital marketing efforts using a variety of web analytics tools (Google Analytics, Web Trends, etc.)<br />
• Key Skills required: Exposure into Social Media Marketing, Google Analytics, Search Engine Marketing (SEM), Digital Marketing, Google AdWords, Search Engine Optimization (SEO) and Email Marketing</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  To  1  Lac  25 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Fresher / Trainee</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Other Bachelor Degree</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Digital Marketing Executive</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Google AdWords</span>
												<span class="bdr dib p2px10px mr5px mt2px"> image optimization</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Search Engine Optimization</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Google Analytics</span>
												<span class="bdr dib p2px10px mr5px mt2px"></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">-</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">-</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">VIKRAM BAMNERA</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">1-23-146/2 Tirumala City Colony Behind Mahabodhi High School, Alwal , Secunderabad, Telengana , India</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">7013224962 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:namanjobplacements@gmail.com"> namanjobplacements@gmail.com </a></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="815084">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="935342"><input type="hidden" name="subject" value="Applied for Digital Marketing Executive(Work From Home)">
					</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-hyderabad.htm" title="Jobs in Hyderabad">Hyderabad</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-secunderabad.htm" title="Jobs in Secunderabad">Secunderabad</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-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-fresh-graduate-fid.htm" title="Fresher / Trainee Jobs">Fresher / Trainee</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-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: 'ckI4M252NDhNOVF5WXpXcGpZbzF1Zz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:106:"Job openings for digital marketing executive work from home in hyderabad | NAMAN JOB PLACEMENT CONSULTANCY";i:2;s:269:"Digital Marketing Executive(Work From Home) Jobs,Digital Marketing Executive(Work From Home) Jobs in Hyderabad,Digital Marketing Executive(Work From Home) Vacancy in Hyderabad,Digital Marketing Executive(Work From Home) jobs in India,Fresher / Trainee jobs in Hyderabad";i:3;s:364:"Apply for Digital Marketing Executive(Work From Home) Jobs in Hyderabad India - Digital Marketing Executive(Work From Home) Vacancy  in Fresher / Trainee field with 0 to 1 years Work Experience, Key Skills are Digital Marketing Executive, Google AdWords, image optimization, Search Engine Optimization, Google Analytics,, Fresher / Trainee jobs in Hyderabad  India";i:4;s:1799:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Digital Marketing Executive(Work From Home)",
		  "baseSalary": " 1  Lac  To  1  Lac  25 Thousand ",
		  "description": "Responsibilities:
• Assist in the formulation of strategies to build a lasting digital connection in B2B and B2C environment.
• Plan and monitor the ongoing company presence on social media (LinkedIn, Twitter, Facebook, etc.).
• Launch optimized online adverts through Google AdWords, Facebook, etc. to increase company and brand awareness.
• Be actively involved in SEO efforts (keyword, image optimization, etc.).
• Prepare online newsletters and promotional emails and organize their distribution through various channels
• Provide creative ideas for content marketing and in updating portal.
• Collaborate with Designers to improve user experience – UI/UX.
• Measure the performance of digital marketing efforts using a variety of web analytics tools (Google Analytics, Web Trends, etc.)
• Key Skills required: Exposure into Social Media Marketing, Google Analytics, Search Engine Marketing (SEM), Digital Marketing, Google AdWords, Search Engine Optimization (SEO) and Email Marketing",
		  "educationRequirements": "Other Bachelor Degree",
		  "experienceRequirements": "0 - 1 Years",
		  "industry": "Fresher / Trainee",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Telangana",
		      "addressRegion": "Hyderabad"
		    }
		  },
		 "qualifications": "Other Bachelor Degree",
		     "skills": "Digital Marketing Executive, Google AdWords, image optimization, Search Engine Optimization, Google Analytics,"
		  }
		</script>
		";i:5;N;}