a:6:{i:0;s:9708:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for corporate gifting manager in delhi</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.righttimeplacement.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.righttimeplacement.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for corporate gifting manager in delhi</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">Corporate Gifting Manager</div>
									<p class="mt7px fw6">Delhi</p>
									
				<br>
				<p class="aj mt7px">Generating leads through networking, reference<br />
<br />
Identifying and mapping potential Corporate & Institutional customers for product placement <br />
<br />
Developing new Tie ups with institutions/corporate & Key accounts<br />
<br />
Pitching presentation<br />
<br />
Ensuring brand approval, product listing & placement process in Corporate Gifting<br />
<br />
Making proposal & offering end- to- end solutions to meet corporate requirements.<br />
<br />
Identifies product improvements or new products by remaining current on industry trends, market activities, and competitors<br />
<br />
Applicant will be handling corporate sales and institutional sales, will be generating revenue by approaching new client and serving to existing client.<br />
<br />
Prepares reports by collecting, analysing, and summarizing information.<br />
<br />
Identifies business opportunities by identifying prospects and evaluating their position in the industry; researching and analysing sales options.<br />
<br />
Meeting client for brand presentation, understand customer requirement, up sell and cross sell products from company catalogue<br />
<br />
Prepare Proposal/quotation and follow up for potential sales opportunity & payment. Be responsible for timely collection of customer outstanding. <br />
<br />
Achieve assigned business targets revenue and profitability<br />
<br />
Maintains professional and technical knowledge<br />
Applicant will be handling corporate sales,institutional sales,will be generating revenue by approaching,client and serving to existing client,market activities,competitors</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">1 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 1  Lac  25 Thousand  To  2  Lac  50 Thousand  P.A.</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">Diploma, B.A, B.Com, B.Pharma</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>
											</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">Right Time Placement</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">Right time placement is one of the leading Placement Firm,offering Placement Consultancy in Delhi,HR Manpower Services in Delhi/NCR,Career Consultant</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">Mohd. Aslam</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">G-138 Dilshad Colony	 Delhi</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9910524266 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:m.asmam.2011@gmail.com"> m.asmam.2011@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="337786">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="522754"><input type="hidden" name="subject" value="Applied for Corporate Gifting Manager">
					</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-delhi.htm" title="Jobs in Delhi">Delhi</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-ghaziabad.htm" title="Jobs in Ghaziabad">Ghaziabad</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-noida.htm" title="Jobs in Noida">Noida</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-mohali.htm" title="Jobs in Mohali">Mohali</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-gurgaon.htm" title="Jobs in Gurgaon">Gurgaon</a> <b class="alpha50 bn small">(1)</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">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-jaipur.htm" title="Jobs in Jaipur">Jaipur</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">(5)</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">(2)</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">(2)</span><a href="jobs-in-hr-recruitment-administration-ir-training-development-operations-fid.htm" title="HR / Recruitment / Administration / IR / Training & Development / Operations Jobs">HR / Recruitment / Administrat...</a></p>
										<p class="mb5px "><span class="fr">(2)</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-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-ites-bpo-kpo-lpo-customer-service-fid.htm" title="ITES / BPO / KPO / LPO / Customer Service Jobs">ITES / BPO / KPO / LPO / Custo...</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: 'MXI4L1VwWEtnVUpTUVhaemRXODZCQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:74:"Job openings for corporate gifting manager in delhi | Right Time Placement";i:2;s:219:"Corporate Gifting Manager Jobs,Corporate Gifting Manager Jobs in Delhi,Corporate Gifting Manager Vacancy in Delhi,Corporate Gifting Manager jobs in India,Sales & Marketing / Business Development/telecaller jobs in Delhi";i:3;s:289:"Apply for Corporate Gifting Manager Jobs in Delhi India - Corporate Gifting Manager Vacancy  in Sales & Marketing / Business Development/telecaller field with 1 years Work Experience, Key Skills are Sales, Marketing, Sales & Marketing / Business Development/telecaller jobs in Delhi  India";i:4;s:2187:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Corporate Gifting Manager",
		  "baseSalary": " 1  Lac  25 Thousand  To  2  Lac  50 Thousand ",
		  "description": "Generating leads through networking, reference

Identifying and mapping potential Corporate & Institutional customers for product placement 

Developing new Tie ups with institutions/corporate & Key accounts

Pitching presentation

Ensuring brand approval, product listing & placement process in Corporate Gifting

Making proposal & offering end- to- end solutions to meet corporate requirements.

Identifies product improvements or new products by remaining current on industry trends, market activities, and competitors

Applicant will be handling corporate sales and institutional sales, will be generating revenue by approaching new client and serving to existing client.

Prepares reports by collecting, analysing, and summarizing information.

Identifies business opportunities by identifying prospects and evaluating their position in the industry; researching and analysing sales options.

Meeting client for brand presentation, understand customer requirement, up sell and cross sell products from company catalogue

Prepare Proposal/quotation and follow up for potential sales opportunity & payment. Be responsible for timely collection of customer outstanding. 

Achieve assigned business targets revenue and profitability

Maintains professional and technical knowledge
Applicant will be handling corporate sales,institutional sales,will be generating revenue by approaching,client and serving to existing client,market activities,competitors",
		  "educationRequirements": "Diploma, B.A, B.Com, B.Pharma",
		  "experienceRequirements": "1 Years",
		  "industry": "Sales & Marketing / Business Development/telecaller",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Delhi/NCR",
		      "addressRegion": "Delhi"
		    }
		  },
		 "qualifications": "Diploma, B.A, B.Com, B.Pharma",
		     "skills": "Sales, Marketing"
		  }
		</script>
		";i:5;N;}