a:6:{i:0;s:8261:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for c programmer in pune</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.exelonconsulting.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.exelonconsulting.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for c programmer in pune</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="dt w100">
				<div class="dtc">
				<div class="xxxlarge fw6 dif">Immediate Opening For Performance</div>
									<p class="mt7px fw6">Pune</p>
								
				</div>
				<div class="dtc w125px"><div class="mt7px">
									
					<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="314585">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="811303"><input type="hidden" name="subject" value="Applied for Immediate Opening for Performance">
					</form>
			
									</div></div>
				</div>
								<br />
				<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-53d0b0627cb3c661"></script>
				<div class="fo">
				<div class="addthis_sharing_toolbox dib vam mr10px"></div>
				<a href="https://www.exelonconsulting.com/vacancy_811303.rss" target="_blank" class="p5px15px dib c3px" style="background:#f8991b;color:#ffffff;"><i class="fa fa-feed"></i> RSS Feed </a>
				</div>
				<br>
				<p class="aj mt7px">Responsibilities include:Need Early Joiners::PUNE<br />
<br />
 <br />
<br />
experience in Performance Testing<br />
<br />
• In-depth knowledge of HP Load Runner<br />
<br />
• Track record experience in load, stress, soak testing<br />
<br />
• Above average C programming skills<br />
<br />
• Have a deep understanding of the performance test project life cycle and deliverables<br />
<br />
• Have a strong understanding of performance test principles<br />
<br />
• Able to demonstrate good communication skills to ensure team, management and customers are informed and up to date<br />
<br />
• Able to provide non-functional performance tuning opportunities and recommendations<br />
<br />
• Able to provide performance test tool on-boarding and training where appropriate<br />
<br />
• Excellent communication skills<br />
<br />
• Constantly challenge self and inspire others to meet ambitious goals and deliver exceptional performance<br />
<br />
• Be passionate about and take responsibility for delivering a highly credible capability<br />
<br />
• Be as consumed with the success and development of the people you influence as you are with your own<br />
<br />
• Focus people’s energy on excellent execution<br />
<br />
• Respect and promote the standards to do business and find intelligent ways to apply them<br />
<br />
• Ownership, initiative and positive approach (‘can-do’ attitude)<br />
<br />
• Enthusiast; determined to develop teams<br />
<br />
• Willing to be open, frank and honest with feedback<br />
<br />
• Accepts change and manages the effects well<br />
<br />
• Likes to develop individuals and to transfer knowledge widely<br />
<br />
• Calm and decisive under pressure</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">2 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 5  Lac  To  10  Lac  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">B.C.A, M.C.A</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">C</span>
												<span class="bdr dib p2px10px mr5px mt2px"> C Programming</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">Client of Exelon Consulting</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">We are An Consultant</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:mahesh@exelonconsulting.com"> mahesh@exelonconsulting.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="314585">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="811303"><input type="hidden" name="subject" value="Applied for Immediate Opening for Performance">
					</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">(2)</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">(1)</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">(1)</span><a href="jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxati...</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: 'YWFsM0FBREJVUW9zWENia2lsOG40UT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:57:"Job openings for c programmer in pune | Exelon Consulting";i:2;s:248:"Immediate Opening for Performance Jobs,Immediate Opening for Performance Jobs in Pune,Immediate Opening for Performance Vacancy in Pune,Immediate Opening for Performance jobs in India,IT Software - Application Programming / Maintenance jobs in Pune";i:3;s:303:"Apply for Immediate Opening for Performance Jobs in Pune India - Immediate Opening for Performance Vacancy  in IT Software - Application Programming / Maintenance field with 2 years Work Experience, Key Skills are C, C Programming, IT Software - Application Programming / Maintenance jobs in Pune  India";i:4;s:2717:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Immediate Opening for Performance",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "Client of Exelon Consulting",
	        "value":  "811303"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "Client of Exelon Consulting",
	      "description": "We are An Consultant",
	      "telephone" : "",
	      "email" : "mahesh@exelonconsulting.com"  
	       },
		  "url": "https://www.exelonconsulting.com/job-openings-for-c-programmer-pune-811303.htm",
          "datePosted": "2021-06-16",
          
		  "baseSalary": " 5  Lac  To  10  Lac ",
		  "description": "Responsibilities include:Need Early Joiners::PUNE

 

experience in Performance Testing

• In-depth knowledge of HP Load Runner

• Track record experience in load, stress, soak testing

• Above average C programming skills

• Have a deep understanding of the performance test project life cycle and deliverables

• Have a strong understanding of performance test principles

• Able to demonstrate good communication skills to ensure team, management and customers are informed and up to date

• Able to provide non-functional performance tuning opportunities and recommendations

• Able to provide performance test tool on-boarding and training where appropriate

• Excellent communication skills

• Constantly challenge self and inspire others to meet ambitious goals and deliver exceptional performance

• Be passionate about and take responsibility for delivering a highly credible capability

• Be as consumed with the success and development of the people you influence as you are with your own

• Focus people’s energy on excellent execution

• Respect and promote the standards to do business and find intelligent ways to apply them

• Ownership, initiative and positive approach (‘can-do’ attitude)

• Enthusiast; determined to develop teams

• Willing to be open, frank and honest with feedback

• Accepts change and manages the effects well

• Likes to develop individuals and to transfer knowledge widely

• Calm and decisive under pressure",
		  "educationRequirements": "B.C.A, M.C.A",
		  "experienceRequirements": "2 Years",
		  "industry": "IT Software - Application Programming / Maintenance",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Maharashtra",
		      "addressRegion": "Pune"
		    }
		  },
		 "qualifications": "B.C.A, M.C.A",
		     "skills": "C, C Programming"
		  }
		</script>
		";i:5;N;}