a:6:{i:0;s:16265:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for net technical team lead in jaipur</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.indiajobss.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.indiajobss.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for net technical team lead in jaipur</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">NET Technical/Team Lead</div>
									<p class="mt7px fw6">Jaipur</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="875984">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="989617"><input type="hidden" name="subject" value="Applied for NET Technical/Team Lead">
					</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="http://www.indiajobss.in/vacancy_989617.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">Do you have the passion to lead software teams and build exceptional quality web applications? If yes, we would love to have you on our team.<br />
<br />
Your responsibilities will be to<br />
<br />
1) Develop our product website and other core applications that help run our business<br />
<br />
2) Work hands-on with junior developers to implement large features with exceptional quality<br />
<br />
3) Stand up for engineering practices that ensure quality products - automated testing, unit testing, agile development, continuous integration, code reviews, and technical design<br />
<br />
4) Manage the day to day workings of the team which includes coaching, task assignment, code reviews, feedback and monitoring the sprint/release plan<br />
<br />
5) Partner with Software Managers, Product Managers, and QA analysts to develop realistic implementation plans with a focus on quality, sustainability, and delivering value to our business<br />
<br />
6) Participate in internal product improvement, evaluation and beta testing exercises<br />
<br />
7) Analyzing the use of different tools and libraries, and creating proof of concepts for aiding decisions on system architecture<br />
<br />
You’ll need to have<br />
<br />
1) Proven experience in leading a small team of .NET developers for 5+ years<br />
<br />
2) Engineering degree in Computer Science, Information Technology or a related subject<br />
<br />
3) Exceptional problem-solving, troubleshooting, and organizational navigation skills<br />
<br />
4) Strong communication skills<br />
<br />
The ideal candidate is<br />
<br />
1) A team player who takes pride in their work, has an eye for detail and a sharp mind<br />
<br />
2) Comfortable in a fast-paced entrepreneurial environment that requires improvisation<br />
<br />
3) 3+ years of experience working in Agile scrum teams<br />
<br />
In return we offer<br />
<br />
1) A work environment with the region’s best<br />
<br />
2) A highly competitive salary commensurate with experience and travel perks<br />
<br />
3) An opportunity to shape the future of travel</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">1 - 3 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 2  Lac  To  4  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">IT Hardware / Technical Support / Telecom Engineering</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">B.Tech/B.E</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">IT Head</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Asp.net</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Agile</span>
												<span class="bdr dib p2px10px mr5px mt2px"> QA Analyst</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Product Manager</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">KALKI SOFTWARE</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">/ New Product Development

Life Cycle Extension

Solutioning based on Kalkitech IP

Testing & Validation

Hardware Development

Certification & Compliance</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">MANISH KU.BANSAL</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">S-64,2nd Floor,Apno Bazar Buiding ,Lata Circle,Jhotwara,Jaipur (Rajasthan)302012</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">8875003911 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:MANISH.BANSAL@INDIAJOBSS.COM"> MANISH.BANSAL@INDIAJOBSS.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="875984">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="989617"><input type="hidden" name="subject" value="Applied for NET Technical/Team Lead">
					</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-jaipur.htm" title="Jobs in Jaipur">Jaipur</a> <b class="alpha50 bn small">(45)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-ahmedabad.htm" title="Jobs in Ahmedabad">Ahmedabad</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-jodhpur.htm" title="Jobs in Jodhpur">Jodhpur</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-indore.htm" title="Jobs in Indore">Indore</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-ajmer.htm" title="Jobs in Ajmer">Ajmer</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-udaipur.htm" title="Jobs in Udaipur">Udaipur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-jabalpur.htm" title="Jobs in Jabalpur">Jabalpur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-barmer.htm" title="Jobs in Barmer">Barmer</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-chennai.htm" title="Jobs in Chennai">Chennai</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-alwar.htm" title="Jobs in Alwar">Alwar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-bikaner.htm" title="Jobs in Bikaner">Bikaner</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-kota.htm" title="Jobs in Kota">Kota</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-bhiwadi.htm" title="Jobs in Bhiwadi">Bhiwadi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></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">(19)</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">(6)</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">(6)</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">(3)</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>
										<p class="mb5px "><span class="fr">(3)</span><a href="jobs-in-cargo-freight-transportation-packaging-shipping-logistic-fid.htm" title="Cargo / Freight / Transportation / Packaging / Shipping/Logistic Jobs">Cargo / Freight / Transportati...</a></p>
										<p class="mb5px "><span class="fr">(3)</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">(2)</span><a href="jobs-in-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Q...</a></p>
										<p class="mb5px "><span class="fr">(2)</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">(2)</span><a href="jobs-in-computers-it-fid.htm" title="IT Hardware / Technical Support / Telecom Engineering Jobs">IT Hardware / Technical Suppor...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-fresh-graduate-fid.htm" title="Fresher / Trainee Jobs">Fresher / Trainee</a></p>
										<p class="mb5px "><span class="fr">(2)</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 spanlist dn"><span class="fr">(1)</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 spanlist dn"><span class="fr">(1)</span><a href="jobs-in-advertisement-marketing-fid.htm" title="Marketing / Advertising / PR / Media Planning Jobs">Marketing / Advertising / PR /...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-architecture-interior-design-fid.htm" title="Architecture / Interior Design Jobs">Architecture / Interior Design</a></p>
										<p class="mb5px spanlist dn"><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 spanlist dn"><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>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-hotel-restaurants-travel-airlines-fid.htm" title="Hotel / Restaurants /Travel / Airlines Jobs">Hotel / Restaurants /Travel / ...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-legal-services-fid.htm" title="Legal / Law Services / Judiciary Jobs">Legal / Law Services / Judicia...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-corporate-planning-fid.htm" title="Corporate Planning & Strategy / Management Consulting Jobs">Corporate Planning & Strategy ...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-education-teaching-training-counselling-fid.htm" title="Education / Teaching / Training / Counselling / Academic Jobs">Education / Teaching / Trainin...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-it-analyst-software-testing-fid.htm" title="IT Software - QA / Testing / Documentation Jobs">IT Software - QA / Testing / D...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-financial-services-banking-investments-insurance-stock-market-loan-fid.htm" title="Financial Services / Banking, Investments / Insurance / stock market / Loan Jobs">Financial Services / Banking, ...</a></p>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
									
				</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: 'a0dEU3BTc3NlV212YnIzeVo1Nmx0QT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:104:"Job openings for net technical team lead in jaipur | Indiajobs Staffing Solutions & Consultancy Services";i:2;s:216:"NET Technical/Team Lead Jobs,NET Technical/Team Lead Jobs in Jaipur,NET Technical/Team Lead Vacancy in Jaipur,NET Technical/Team Lead jobs in India,IT Hardware / Technical Support / Telecom Engineering jobs in Jaipur";i:3;s:332:"Apply for NET Technical/Team Lead Jobs in Jaipur India - NET Technical/Team Lead Vacancy  in IT Hardware / Technical Support / Telecom Engineering field with 1 to 3 years Work Experience, Key Skills are IT Head, Asp.net, Agile, QA Analyst, Product Manager, IT Hardware / Technical Support / Telecom Engineering jobs in Jaipur  India";i:4;s:3226:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "NET Technical/Team Lead",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "KALKI SOFTWARE",
	        "value":  "989617"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "KALKI SOFTWARE",
	      "description": "/ New Product Development

Life Cycle Extension

Solutioning based on Kalkitech IP

Testing & Validation

Hardware Development

Certification & Compliance",
	      "telephone" : "8875003911",
	      "email" : "MANISH.BANSAL@INDIAJOBSS.COM"  
	       },
		  "url": "http://www.indiajobss.in/job-openings-for-net-technical-team-lead-jaipur-989617.htm",
          "datePosted": "2022-01-04",
          
		  "baseSalary": " 2  Lac  To  4  Lac ",
		  "description": "Do you have the passion to lead software teams and build exceptional quality web applications? If yes, we would love to have you on our team.

Your responsibilities will be to

1) Develop our product website and other core applications that help run our business

2) Work hands-on with junior developers to implement large features with exceptional quality

3) Stand up for engineering practices that ensure quality products - automated testing, unit testing, agile development, continuous integration, code reviews, and technical design

4) Manage the day to day workings of the team which includes coaching, task assignment, code reviews, feedback and monitoring the sprint/release plan

5) Partner with Software Managers, Product Managers, and QA analysts to develop realistic implementation plans with a focus on quality, sustainability, and delivering value to our business

6) Participate in internal product improvement, evaluation and beta testing exercises

7) Analyzing the use of different tools and libraries, and creating proof of concepts for aiding decisions on system architecture

You’ll need to have

1) Proven experience in leading a small team of .NET developers for 5+ years

2) Engineering degree in Computer Science, Information Technology or a related subject

3) Exceptional problem-solving, troubleshooting, and organizational navigation skills

4) Strong communication skills

The ideal candidate is

1) A team player who takes pride in their work, has an eye for detail and a sharp mind

2) Comfortable in a fast-paced entrepreneurial environment that requires improvisation

3) 3+ years of experience working in Agile scrum teams

In return we offer

1) A work environment with the region’s best

2) A highly competitive salary commensurate with experience and travel perks

3) An opportunity to shape the future of travel",
		  "educationRequirements": "B.Tech/B.E",
		  "experienceRequirements": "1 - 3 Years",
		  "industry": "IT Hardware / Technical Support / Telecom Engineering",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Rajasthan",
		      "addressRegion": "Jaipur"
		    }
		  },
		 "qualifications": "B.Tech/B.E",
		     "skills": "IT Head, Asp.net, Agile, QA Analyst, Product Manager"
		  }
		</script>
		";i:5;N;}