a:6:{i:0;s:8722:"				<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="h1"><h1>Job openings for net developer in maharastrapune</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.propertygurupune.com/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.propertygurupune.com/career.htm" title="Career">Career</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for net developer in maharastrapune</p>
									<div class="pt10px">
				<div class="xxxlarge fw6 dif">.Net Developer Pune</div>
									<p class="mt7px fw6">Pune, Maharastra</p>
									
				<br>
				<p class="aj mt7px">Role: .Net developer<br />
Exp: 2 to 4yrs<br />
Key Skills: ASP.NET, C#, MVC, Web API.<br />
Job Description:<br />
• Bachelor degree in Computer science, Computer Engineering or equivalents<br />
•	Minimum 2-4 years of experience developing large scale Web applications in NET<br />
•	Deep understanding of ASP.Net, MVC, ASPNET web APIs<br />
•	Solid understanding of CSS, JavaScript, JavaScript frameworks (e.g. jQuery)<br />
•	Database Programming using MS SQL Server<br />
•	A highly ethical & disciplined and a proactive personality<br />
•	Ability to work in a team<br />
•	Good problem-solving ability</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">2 - 6 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 2  Lac  75 Thousand  To  8  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">IT Software - System Programming</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Other Bachelor Degree</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Asp.net </span>
												<span class="bdr dib p2px10px mr5px mt2px">MVC</span>
												<span class="bdr dib p2px10px mr5px mt2px"> API</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">TMS</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">IT Company based at Magarpatta  City</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:deeptimane26@gmail.com"> deeptimane26@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="779497">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="844607"><input type="hidden" name="subject" value="Applied for .Net Developer Pune">
					</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">(27)</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">(4)</span><a href="jobs-in-property-construction-fid.htm" title="Real Estate / Construction Jobs">Real Estate / Construction</a></p>
										<p class="mb5px "><span class="fr">(3)</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">(3)</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">(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-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-education-teaching-training-counselling-fid.htm" title="Education / Teaching / Training / Counselling / Academic Jobs">Education / Teaching / Trainin...</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 "><span class="fr">(2)</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>
										<p class="mb5px "><span class="fr">(1)</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">(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-self-employed-entrepreneur-consultants-freelancers-fid.htm" title="Self Employed / Entrepreneur / Consultants / Freelancers Jobs">Self Employed / Entrepreneur /...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</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 spanlist dn"><span class="fr">(1)</span><a href="jobs-in-public-relation-pr-advertising-events-fid.htm" title="Public Relation (PR) /  Advertising / Events Jobs">Public Relation (PR) /  Advert...</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: 'K0RBaktDa1ZXTnBuN2lqcmFXUENHZz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:65:"Job openings for net developer in maharastrapune | Pune Placement";i:2;s:173:".Net Developer Pune Jobs,.Net Developer Pune Jobs in Pune,.Net Developer Pune Vacancy in Pune,.Net Developer Pune jobs in India,IT Software - System Programming jobs in Pune";i:3;s:243:"Apply for .Net Developer Pune Jobs in Pune India - .Net Developer Pune Vacancy  in IT Software - System Programming field with 2 to 6 years Work Experience, Key Skills are Asp.net ,MVC, API, IT Software - System Programming jobs in Pune  India";i:4;s:1765:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": ".Net Developer Pune",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "TMS",
	        "value":  "844607"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "TMS",
	      "description": "IT Company based at Magarpatta  City",
	      "telephone" : "",
	      "email" : "deeptimane26@gmail.com"  
	       },
		  "url": "http://www.propertygurupune.com/job-openings-for-net-developer-maharastrapune-844607.htm",
          "datePosted": "2020-10-03",
          
		  "baseSalary": " 2  Lac  75 Thousand  To  8  Lac ",
		  "description": "Role: .Net developer
Exp: 2 to 4yrs
Key Skills: ASP.NET, C#, MVC, Web API.
Job Description:
• Bachelor degree in Computer science, Computer Engineering or equivalents
•	Minimum 2-4 years of experience developing large scale Web applications in NET
•	Deep understanding of ASP.Net, MVC, ASPNET web APIs
•	Solid understanding of CSS, JavaScript, JavaScript frameworks (e.g. jQuery)
•	Database Programming using MS SQL Server
•	A highly ethical & disciplined and a proactive personality
•	Ability to work in a team
•	Good problem-solving ability",
		  "educationRequirements": "Other Bachelor Degree",
		  "experienceRequirements": "2 - 6 Years",
		  "industry": "IT Software - System Programming",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Maharashtra",
		      "addressRegion": "Pune, Maharastra"
		    }
		  },
		 "qualifications": "Other Bachelor Degree",
		     "skills": "Asp.net ,MVC, API"
		  }
		</script>
		";i:5;N;}