a:6:{i:0;s:8517:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for senior dot net developer in chennai</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.bsrics.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.bsrics.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for senior dot net developer in chennai</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">Senior Dot Net Developer</div>
									<p class="mt7px fw6">Chennai</p>
									
				<br>
				<p class="aj mt7px">Roles and Responsibilities<br />
<br />
•	Understand the requirements and work closely with Project Manager to deliver the tasks<br />
•	Deliver across the entire app life cycle concept, design, build, deploy, test, release to stores and support.<br />
•	Build prototypes at tech scoping stage of projects.<br />
•	Working with the front-end developers to build the interface with focus on usability features.<br />
Optimizing performance for the apps /web.<br />
<br />
Desired Candidate Profile<br />
<br />
Qualifications:<br />
<br />
•	Education Requirements:  Bachelor’s degree in any discipline<br />
•	To succeed in this position, you must have more than 4 years of experience in Web development experience with .NET, SQL server 2012+, Ajax /j-query/ LINQ, HTML 5.0, ASP.net, bootstrap will be added advantage platform in the following areas.<br />
•	Programming Language(s): C#<br />
•	ASP.NET: Complete understanding and working knowledge using ASP.NET<br />
•	jQuery: Development experience in jQuery concepts and components<br />
•	SQL: hand on experience in SQL query and writing Stored procedure and Functions<br />
•	Automation hand on experience: Selenium</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">4 - 10 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 3  Lac  50 Thousand  To  8  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, B.Sc, B.Tech/B.E, M.C.A, M.Sc, M.Tech</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Java Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> JQuery</span>
												<span class="bdr dib p2px10px mr5px mt2px"> software development</span>
												<span class="bdr dib p2px10px mr5px mt2px"> java programmer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> .net Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Dot 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">Contact Person</td>
						<td class="p5px">Mr.S.Buvanesh</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">Regus Business Centre, No.136, 3rd Floor, Shyamala Tower, Arcot Rd,</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9176376488 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:admin@bsrisolutions.com"> admin@bsrisolutions.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="696341">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="964392"><input type="hidden" name="subject" value="Applied for Senior Dot Net 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-chennai.htm" title="Jobs in Chennai">Chennai</a> <b class="alpha50 bn small">(16)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-gurgaon.htm" title="Jobs in Gurgaon">Gurgaon</a> <b class="alpha50 bn small">(12)</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">(20)</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-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-dba-database-management-fid.htm" title="IT Software - DataBase / Datawarehousing Jobs">IT Software - DataBase / Dataw...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-mobile-software-application-fid.htm" title="IT Software - Mobile Technologies Jobs">IT Software - Mobile Technolog...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-analytic-business-intelligence-fid.htm" title="Analytic and Business Intelligence Jobs">Analytic and Business Intellig...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-client-server-fid.htm" title="IT Software - Client Server Jobs">IT Software - Client Server</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 "><span class="fr">(1)</span><a href="jobs-in-journalism-media-publishing-fid.htm" title="Content Writing / Journalism / Editing Jobs">Content Writing / Journalism /...</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: 'NTdReVpvc3QxTnYxZG1LNzVyc1ZNQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:77:"Job openings for senior dot net developer in chennai | BSRI Solutions Pvt Ltd";i:2;s:221:"Senior Dot Net Developer Jobs,Senior Dot Net Developer Jobs in Chennai,Senior Dot Net Developer Vacancy in Chennai,Senior Dot Net Developer jobs in India,IT Software - Application Programming / Maintenance jobs in Chennai";i:3;s:377:"Apply for Senior Dot Net Developer Jobs in Chennai India - Senior Dot Net Developer Vacancy  in IT Software - Application Programming / Maintenance field with 4 to 10 years Work Experience, Key Skills are Java Developer, JQuery, software development, java programmer, .net Developer, Dot Net Developer, IT Software - Application Programming / Maintenance jobs in Chennai  India";i:4;s:1924:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Senior Dot Net Developer",
		  "baseSalary": " 3  Lac  50 Thousand  To  8  Lac ",
		  "description": "Roles and Responsibilities

•	Understand the requirements and work closely with Project Manager to deliver the tasks
•	Deliver across the entire app life cycle concept, design, build, deploy, test, release to stores and support.
•	Build prototypes at tech scoping stage of projects.
•	Working with the front-end developers to build the interface with focus on usability features.
Optimizing performance for the apps /web.

Desired Candidate Profile

Qualifications:

•	Education Requirements:  Bachelor’s degree in any discipline
•	To succeed in this position, you must have more than 4 years of experience in Web development experience with .NET, SQL server 2012+, Ajax /j-query/ LINQ, HTML 5.0, ASP.net, bootstrap will be added advantage platform in the following areas.
•	Programming Language(s): C#
•	ASP.NET: Complete understanding and working knowledge using ASP.NET
•	jQuery: Development experience in jQuery concepts and components
•	SQL: hand on experience in SQL query and writing Stored procedure and Functions
•	Automation hand on experience: Selenium",
		  "educationRequirements": "B.C.A, B.Sc, B.Tech/B.E, M.C.A, M.Sc, M.Tech",
		  "experienceRequirements": "4 - 10 Years",
		  "industry": "IT Software - Application Programming / Maintenance",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Tamil Nadu",
		      "addressRegion": "Chennai"
		    }
		  },
		 "qualifications": "B.C.A, B.Sc, B.Tech/B.E, M.C.A, M.Sc, M.Tech",
		     "skills": "Java Developer, JQuery, software development, java programmer, .net Developer, Dot Net Developer"
		  }
		</script>
		";i:5;N;}