a:6:{i:0;s:11428:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>IT Sales Executive</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.starconsultancyservices.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.starconsultancyservices.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> IT Sales 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> 3 - 10 Years</p>
				
									<p class="mb10px"><i class="fa fa-map-marker mr7px fl pl1px w15px alpha50"></i>Delhi, Gurgaon, South Delhi</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="726745">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="883265"><input type="hidden" name="subject" value="Applied for IT Sales Executive">
					</form>
					</div>
			
						
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Job Description</p>
				<p class="aj mt10px">Responsibilities:<br />
<br />
·         Responsible for sales of IT Software Products (Major experienced in Software sales, Cloud sales)<br />
<br />
·         Responsible for generating leads, calling and face to face meetings.<br />
<br />
·         Online demo to clients.<br />
<br />
·         Meeting with Clients.<br />
<br />
·         Identify and study target customer accounts, their business ecosystem and IT environment, key people along with their interests, organizational pain points, IT priorities, current sourcing activities, etc. for a comprehensive account mapping plan<br />
<br />
·         Understand the IT trends and continuously update the relevant IT information.<br />
<br />
·         Create and build pursuit plans as a strategy to break into target prospects accounts<br />
<br />
·         Extensive interaction with sales team to support them on their customer pursuits<br />
<br />
·         Facilitate preparation and dissemination of management reports (e.g biweekly projections; sales update meetings, etc.)<br />
<br />
·         Build a knowledge repository with reusable content, thereby bringing about higher efficiency and productivity<br />
<br />
·         Support in responding to RFPs and in also preparing proposals<br />
<br />
·         Managing workload in order to organize and prioritize daily and weekly goals to help the sales team meet their targets.<br />
<br />
·         Represent the organization at the industry conferences to develop leads and fruitful relationships<br />
<br />
·         Internalize the products and service offerings of Value Momentum to help to create appropriate messaging for different levels of customer interaction<br />
<br />
 <br />
<br />
Pre-requisites:<br />
<br />
·         Minimum 3-10 yrs of experience of Software sales<br />
<br />
·         Field sales/Direct sales experience of selling software solutions<br />
<br />
·         Experience of selling software and cloud service<br />
<br />
·         Excellent communication skills<br />
<br />
·         Any Graduation/Post Graduation</p>
				
				<table class="w100 formTable bdr0 mt10px">				
											<tr>
							<td class="w22 alpha75 p5px">Salary</td>
							<td class="p5px"> 3  Lac  To  12  Lac  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">3 - 10 Years</td>
				</tr>
									<tr>
					<td class="w22 alpha75 p5px">Qualification</td>
					<td class="p5px">Other Bachelor 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">sales</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> marketing</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> business development</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 vat">Company Name</td>
						<td class="p5px vat"><p class="dif b">Northcorp Software Pvt Ltd</p></td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">Northcorp Software Pvt Ltd an IT service provider company, we have a recurring requirement in IT sales, BDE, Operations, Software Development for our Gurgaon, South Extension offices in Delhi</td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px">Contact Person</td>
						<td class="p5px">nishant</td>
						</tr>					
												<tr>
						<td class="w22 alpha75 p5px">Address</td>
						<td class="p5px">delhi</td>
						</tr>					
												<tr>
						<td class="w22 alpha75 p5px">Mobile </td>
						<td class="p5px">9990179508 </td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:starcunsaltencyservices@gail.com"> starcunsaltencyservices@gail.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="726745">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="883265"><input type="hidden" name="subject" value="Applied for IT Sales 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">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-jamui.htm" title="Jobs in Jamui">Jamui</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-noida.htm" title="Jobs in Noida">Noida</a> <b class="alpha50 bn small">(7)</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">(2)</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-education-teaching-training-counselling-fid.htm" title="Education / Teaching / Training / Counselling / Academic Jobs">Education / Teaching / Training / Counselling / Academic</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-front-office-data-entry-fid.htm" title="Front Office / Executive Assistant / Data Entry Jobs">Front Office / Executive Assistant / Data Entry</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-insurance-loan-credit-fid.htm" title="Insurance / Loan / Credit Management Jobs">Insurance / Loan / Credit Management</a> <b class="alpha50 bn small">(4)</b></span>
										<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">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-telecom-software-fid.htm" title="IT Software - Telecom Jobs">IT Software - Telecom</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-call-center-medical-transcription-fid.htm" title="ITES / BPO / KPO / LPO / Customer Service / Operations Jobs">ITES / BPO / KPO / LPO / Customer Service / Operations</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-public-relation-fid.htm" title="Public Relation Jobs">Public Relation</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">(1)</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: 'NUVtWmJYMUprSWN4YkNCZ1FTMXVjQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:106:"IT Sales Executive Jobs in Delhi, Gurgaon - Vacancy in IT Software - Application Programming / Maintenance";i:2;s:218:"IT Sales Executive Jobs,IT Sales Executive Jobs in Delhi, Gurgaon,IT Sales Executive Vacancy in Delhi, Gurgaon,IT Sales Executive jobs in India,IT Software - Application Programming / Maintenance jobs in Delhi, Gurgaon";i:3;s:321:"Apply for IT Sales Executive Jobs in Delhi, Gurgaon India - IT Sales Executive Vacancy  in IT Software - Application Programming / Maintenance field with 3 to 10 years Work Experience, Key Skills are sales, marketing, business development, IT Software - Application Programming / Maintenance jobs in Delhi, Gurgaon  India";i:4;s:2597:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "IT Sales Executive",
		  "baseSalary": " 3  Lac  To  12  Lac ",
		  "description": "Responsibilities:

·         Responsible for sales of IT Software Products (Major experienced in Software sales, Cloud sales)

·         Responsible for generating leads, calling and face to face meetings.

·         Online demo to clients.

·         Meeting with Clients.

·         Identify and study target customer accounts, their business ecosystem and IT environment, key people along with their interests, organizational pain points, IT priorities, current sourcing activities, etc. for a comprehensive account mapping plan

·         Understand the IT trends and continuously update the relevant IT information.

·         Create and build pursuit plans as a strategy to break into target prospects accounts

·         Extensive interaction with sales team to support them on their customer pursuits

·         Facilitate preparation and dissemination of management reports (e.g biweekly projections; sales update meetings, etc.)

·         Build a knowledge repository with reusable content, thereby bringing about higher efficiency and productivity

·         Support in responding to RFPs and in also preparing proposals

·         Managing workload in order to organize and prioritize daily and weekly goals to help the sales team meet their targets.

·         Represent the organization at the industry conferences to develop leads and fruitful relationships

·         Internalize the products and service offerings of Value Momentum to help to create appropriate messaging for different levels of customer interaction

 

Pre-requisites:

·         Minimum 3-10 yrs of experience of Software sales

·         Field sales/Direct sales experience of selling software solutions

·         Experience of selling software and cloud service

·         Excellent communication skills

·         Any Graduation/Post Graduation",
		  "educationRequirements": "Other Bachelor Degree",
		  "experienceRequirements": "3 - 10 Years",
		  "industry": "IT Software - Application Programming / Maintenance",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Delhi/NCR, Haryana",
		      "addressRegion": "Delhi, Gurgaon, South Delhi"
		    }
		  },
		 "qualifications": "Other Bachelor Degree",
		     "skills": "sales, marketing, business development"
		  }
		</script>
		";i:5;N;}