a:6:{i:0;s:8687:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for net full stack developer in hyderabad</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.namanjobplacement.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.namanjobplacement.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for net full stack developer in hyderabad</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">.Net Full Stack Developer</div>
									<p class="mt7px fw6">Hyderabad</p>
									
				<br>
				<p class="aj mt7px">The .Net Developer(Full-Stack) will be responsible for Analyzing, Designing, Coding and Testing various ongoing and future business requirements implementation and ensure the delivery is scalable and within scope(time and quality).<br />
This is a 'hands-on' position requiring solid technical skills, as well as excellent interpersonal and communication skills and must be capable of working independently and collaboratively.<br />
Writing clean, well-thought-out design and code with a focus on quality, simplicity, & maintainability.<br />
Consider the customer's perspective and experiences when designing systems.<br />
Communicate effectively and partner well with other disciplines of the project team to deliver high-quality solutions from envisioning to deployment to live site availability.<br />
Responsible for understanding and adapting to new technologies, tools, methods, and processes.<br />
Technology Evaluation and recommendation for application architecture enhancements.<br />
Adoption of latest Technology Patterns and Practices.<br />
Good knowledge of Design/Development/Testing experience using large/complex application using various Microsoft technologies (ASP.Net, MVC, C#, .NET, LINQ, Entity Framework, .NET Core SQL Server, etc.)<br />
Mandatory 4 years of front-end development experience in languages including React/Angular, JavaScript, HTML5, and CSS.<br />
Excellent problem-solving and debugging skills with a solid understanding of Test Driven Development (TDD).</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">6 - 8 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 4  Lac  To  6  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">IT Software - Others</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">B.Tech/B.E, M.Tech</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"> c#</span>
												<span class="bdr dib p2px10px mr5px mt2px"> .NET</span>
												<span class="bdr dib p2px10px mr5px mt2px"> LINQ</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Entity Framework</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Full stack Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> .net developer</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">-</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">-</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">VIKRAM BAMNERA</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">1-23-146/2 Tirumala City Colony Behind Mahabodhi High School, Alwal , Secunderabad, Telengana , India</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">7013224962 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:namanjobplacements@gmail.com"> namanjobplacements@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="815084">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="945983"><input type="hidden" name="subject" value="Applied for .Net Full stack Developer">
					</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-hyderabad.htm" title="Jobs in Hyderabad">Hyderabad</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-secunderabad.htm" title="Jobs in Secunderabad">Secunderabad</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-ranga-reddy.htm" title="Jobs in Ranga Reddy">Ranga Reddy</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">(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-fresh-graduate-fid.htm" title="Fresher / Trainee Jobs">Fresher / Trainee</a></p>
										<p class="mb5px "><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 "><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>
									
				</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: 'WFU3MjJzWktjdGFFSGZPVkdRK3RWdz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:88:"Job openings for net full stack developer in hyderabad | NAMAN JOB PLACEMENT CONSULTANCY";i:2;s:200:".Net Full stack Developer Jobs,.Net Full stack Developer Jobs in Hyderabad,.Net Full stack Developer Vacancy in Hyderabad,.Net Full stack Developer jobs in India,IT Software - Others jobs in Hyderabad";i:3;s:308:"Apply for .Net Full stack Developer Jobs in Hyderabad India - .Net Full stack Developer Vacancy  in IT Software - Others field with 6 to 8 years Work Experience, Key Skills are ASP.Net, MVC, c#, .NET, LINQ, Entity Framework, Full stack Developer, .net developer, IT Software - Others jobs in Hyderabad  India";i:4;s:2170:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": ".Net Full stack Developer",
		  "baseSalary": " 4  Lac  To  6  Lac ",
		  "description": "The .Net Developer(Full-Stack) will be responsible for Analyzing, Designing, Coding and Testing various ongoing and future business requirements implementation and ensure the delivery is scalable and within scope(time and quality).
This is a 'hands-on' position requiring solid technical skills, as well as excellent interpersonal and communication skills and must be capable of working independently and collaboratively.
Writing clean, well-thought-out design and code with a focus on quality, simplicity, & maintainability.
Consider the customer's perspective and experiences when designing systems.
Communicate effectively and partner well with other disciplines of the project team to deliver high-quality solutions from envisioning to deployment to live site availability.
Responsible for understanding and adapting to new technologies, tools, methods, and processes.
Technology Evaluation and recommendation for application architecture enhancements.
Adoption of latest Technology Patterns and Practices.
Good knowledge of Design/Development/Testing experience using large/complex application using various Microsoft technologies (ASP.Net, MVC, C#, .NET, LINQ, Entity Framework, .NET Core SQL Server, etc.)
Mandatory 4 years of front-end development experience in languages including React/Angular, JavaScript, HTML5, and CSS.
Excellent problem-solving and debugging skills with a solid understanding of Test Driven Development (TDD).",
		  "educationRequirements": "B.Tech/B.E, M.Tech",
		  "experienceRequirements": "6 - 8 Years",
		  "industry": "IT Software - Others",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Telangana",
		      "addressRegion": "Hyderabad"
		    }
		  },
		 "qualifications": "B.Tech/B.E, M.Tech",
		     "skills": "ASP.Net, MVC, c#, .NET, LINQ, Entity Framework, Full stack Developer, .net developer"
		  }
		</script>
		";i:5;N;}