a:6:{i:0;s:8428:"				<section id="middle">
				<div class="wrap" id="bodyFormat1">
				<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 field marketing executive in pune</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.suggestjobconsultingservices.com/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.suggestjobconsultingservices.com/jobs-gallery.htm" title="Jobs Gallery">Jobs Gallery</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for field marketing executive in pune</p>
									<div class="pt10px">
				<div class="xxxlarge fw6 dif">Field Marketing Executive</div>
									<p class="mt7px fw6">Pune</p>
									
				<br>
				<p class="aj mt7px">Hi,<br />
Greetings from Aditya Technology,<br />
<br />
Here we are announcing to everyone about our project QuickArrange International LLP.<br />
<br />
Quick Arrange is a web based portal bringing together private individuals & small entrepreneurs to buy & sell their products and services. The portal can be used by both, users & consumers creating demand & supply of products & services.<br />
Users can sell or purchase their products through a wide range of categories, also creating categories of their own. Users will have provision of receiving SMS & e-mails related to consumers requesting for their products. One of the key features of our portal is that we also send SMS& emails to the consumer database we have, creating an awareness of your product or service. City, area & region specific search will facilitate to buy & sell products for specific locations. User will have his own account which can help him view how Quick Arrange has profited their business showing a graph structure. <br />
This portal will ease one click business system to save time, money & human efforts.                                     <br />
We are a one step portal that can help you promote all kinds of products & services.<br />
<br />
<br />
Job Profile:<br />
•	create awareness of and develop the brand you're marketing<br />
•	communicate with target audiences and build and develop customer relationships<br />
•	help with marketing plans, advertising, direct marketing and campaigns<br />
•	support the marketing manager in delivering agreed activities<br />
•	source advertising opportunities and place adverts in the press or on the radio<br />
•	work closely with in-house or external creative agencies to design marketing materials such as brochures and adverts<br />
•	write and proofread marketing copy for both online and print campaigns<br />
•	produce creative content, including videos and blog posts<br />
•	run social media channels (e.g. Twitter, Face book and LinkedIn) to enhance audience engagement<br />
•	source and secure sponsorship<br />
•	New Franchise Lead generation. <br />
•	Branding.<br />
•	Promotions.</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  2  Lac  50 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">IT Software - Application Programming / Maintenance</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Other Bachelor Degree, MD/Medicinae Doctor</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Sales</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Marketing</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">Email ID</td>
						<td class="p5px"><a href="mailto:sjcrecruitment19@yahoo.com"> sjcrecruitment19@yahoo.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="677365">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="896066"><input type="hidden" name="subject" value="Applied for Field 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-pune.htm" title="Jobs in Pune">Pune</a> <b class="alpha50 bn small">(218)</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">(156)</span><a href="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">(52)</span><a href="jobs-in-advertisement-marketing-fid.htm" title="Marketing / Advertising / PR / Media Planning Jobs">Marketing / Advertising / PR /...</a></p>
										<p class="mb5px "><span class="fr">(3)</span><a href="jobs-in-system-programming-fid.htm" title="IT Software - System Programming Jobs">IT Software - System Programmi...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-human-resources-fid.htm" title="HR / Recruitment / Administration / IR Jobs">HR / Recruitment / Administrat...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-dba-database-management-fid.htm" title="IT Software - DataBase / Datawarehousing Jobs">IT Software - DataBase / Dataw...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxati...</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>
									
				</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: 'UEhXSTQ1eGI2dG9SRUhiUG0vOG51dz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:84:"Job openings for field marketing executive in pune | Suggest Job Consulting Services";i:2;s:216:"Field Marketing Executive Jobs,Field Marketing Executive Jobs in Pune,Field Marketing Executive Vacancy in Pune,Field Marketing Executive jobs in India,IT Software - Application Programming / Maintenance jobs in Pune";i:3;s:314:"Apply for Field Marketing Executive Jobs in Pune India - Field Marketing Executive Vacancy  in IT Software - Application Programming / Maintenance field with 0 to 1 years Work Experience, Key Skills are Sales, Marketing, Business Development, IT Software - Application Programming / Maintenance jobs in Pune  India";i:4;s:2791:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Field Marketing Executive",
		  "baseSalary": " 1  Lac  To  2  Lac  50 Thousand ",
		  "description": "Hi,
Greetings from Aditya Technology,

Here we are announcing to everyone about our project QuickArrange International LLP.

Quick Arrange is a web based portal bringing together private individuals & small entrepreneurs to buy & sell their products and services. The portal can be used by both, users & consumers creating demand & supply of products & services.
Users can sell or purchase their products through a wide range of categories, also creating categories of their own. Users will have provision of receiving SMS & e-mails related to consumers requesting for their products. One of the key features of our portal is that we also send SMS& emails to the consumer database we have, creating an awareness of your product or service. City, area & region specific search will facilitate to buy & sell products for specific locations. User will have his own account which can help him view how Quick Arrange has profited their business showing a graph structure. 
This portal will ease one click business system to save time, money & human efforts.                                     
We are a one step portal that can help you promote all kinds of products & services.


Job Profile:
•	create awareness of and develop the brand you're marketing
•	communicate with target audiences and build and develop customer relationships
•	help with marketing plans, advertising, direct marketing and campaigns
•	support the marketing manager in delivering agreed activities
•	source advertising opportunities and place adverts in the press or on the radio
•	work closely with in-house or external creative agencies to design marketing materials such as brochures and adverts
•	write and proofread marketing copy for both online and print campaigns
•	produce creative content, including videos and blog posts
•	run social media channels (e.g. Twitter, Face book and LinkedIn) to enhance audience engagement
•	source and secure sponsorship
•	New Franchise Lead generation. 
•	Branding.
•	Promotions.",
		  "educationRequirements": "Other Bachelor Degree, MD/Medicinae Doctor",
		  "experienceRequirements": "0 - 1 Years",
		  "industry": "IT Software - Application Programming / Maintenance",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Maharashtra",
		      "addressRegion": "Pune"
		    }
		  },
		 "qualifications": "Other Bachelor Degree, MD/Medicinae Doctor",
		     "skills": "Sales, Marketing, Business Development"
		  }
		</script>
		";i:5;N;}