a:6:{i:0;s:7428:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for senior php developer in thiruvananthapuram</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.inducthrsolutions.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.inducthrsolutions.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for senior php developer in thiruvananthapuram</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 PHP Developer</div>
									<p class="mt7px fw6">Thiruvananthapuram</p>
									
				<br>
				<p class="aj mt7px"> Knowledge and proficiency in PHP, MySQL, HTML, CSS, and JavaScript. <br />
 Experience using Bootstrap or a similar CSS framework, as well as SASS / LESS. <br />
 Should have worked on projects using JSON, XML, and web services. <br />
 Exceptional programming skills with strong fundamentals in OO Programming, MVC, ORM. <br />
 Experience in payment gateways integration. <br />
 Experience in image manipulation. <br />
 Ability to write and consume SOAP & REST web services. <br />
 Experience in Laravel will be an added advantage. <br />
 Experience in API integration is an added advantage. i.e. Google, Facebook, Twitter, etc. <br />
 Write clean, well-structured code with proper abstraction and reusability. <br />
 Experience in responsive design creation from scratch. <br />
 Experience on source code management (SVN / Git). <br />
 Experience with npm, Bower, Bundler, Grunt, Gulp, Webpack. <br />
 Experience with Redis, Memcached, APCu. <br />
 Experience in creating multilingual websites is an added advantage. <br />
 Experience in AWS services is an added advantage. <br />
 Must have good analytical and problem-solving skills. <br />
 Must be a good team player, good learner, and self-starter. <br />
 Ability to work independently and perform under strict deadlines.</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">4 - 6 Years</td>
				</tr>			
									<tr>
					<td class="alpha75 p5px">Salary</td>
					<td class="p5px">Not Disclosed</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.Tech/B.E</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">html</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Javascript</span>
												<span class="bdr dib p2px10px mr5px mt2px"> PHP Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> PHP Software Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> web developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Web Designer Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> PHP Programmer</span>
												<span class="bdr dib p2px10px mr5px mt2px"></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">Vaishnav</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">MRA -64, Mukkolackal, Kulathoor</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">6282103102 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:inducthr@gmail.com"> inducthr@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="810097">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="923779"><input type="hidden" name="subject" value="Applied for Senior PHP 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-thiruvananthapuram.htm" title="Jobs in Thiruvananthapuram">Thiruvananthapuram</a> <b class="alpha50 bn small">(10)</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">(13)</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">(3)</span><a href="jobs-in-ecommerce-internet-marketing-fid.htm" title="IT Software - Ecommerce / Internet Technologies Jobs">IT Software - Ecommerce / Inte...</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: 'SGVzbFJwTjNYZm8zUWdVVm4xSlNMdz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:81:"Job openings for senior php developer in thiruvananthapuram | INDUCT HR Solutions";i:2;s:238:"Senior PHP Developer Jobs,Senior PHP Developer Jobs in Thiruvananthapuram,Senior PHP Developer Vacancy in Thiruvananthapuram,Senior PHP Developer jobs in India,IT Software - Application Programming / Maintenance jobs in Thiruvananthapuram";i:3;s:405:"Apply for Senior PHP Developer Jobs in Thiruvananthapuram India - Senior PHP Developer Vacancy  in IT Software - Application Programming / Maintenance field with 4 to 6 years Work Experience, Key Skills are html, Javascript, PHP Developer, PHP Software Developer, web developer, Web Designer Developer, PHP Programmer,, IT Software - Application Programming / Maintenance jobs in Thiruvananthapuram  India";i:4;s:1994:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Senior PHP Developer",
		  "baseSalary": "",
		  "description": " Knowledge and proficiency in PHP, MySQL, HTML, CSS, and JavaScript. 
 Experience using Bootstrap or a similar CSS framework, as well as SASS / LESS. 
 Should have worked on projects using JSON, XML, and web services. 
 Exceptional programming skills with strong fundamentals in OO Programming, MVC, ORM. 
 Experience in payment gateways integration. 
 Experience in image manipulation. 
 Ability to write and consume SOAP & REST web services. 
 Experience in Laravel will be an added advantage. 
 Experience in API integration is an added advantage. i.e. Google, Facebook, Twitter, etc. 
 Write clean, well-structured code with proper abstraction and reusability. 
 Experience in responsive design creation from scratch. 
 Experience on source code management (SVN / Git). 
 Experience with npm, Bower, Bundler, Grunt, Gulp, Webpack. 
 Experience with Redis, Memcached, APCu. 
 Experience in creating multilingual websites is an added advantage. 
 Experience in AWS services is an added advantage. 
 Must have good analytical and problem-solving skills. 
 Must be a good team player, good learner, and self-starter. 
 Ability to work independently and perform under strict deadlines.",
		  "educationRequirements": "B.Tech/B.E",
		  "experienceRequirements": "4 - 6 Years",
		  "industry": "IT Software - Application Programming / Maintenance",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Kerala",
		      "addressRegion": "Thiruvananthapuram"
		    }
		  },
		 "qualifications": "B.Tech/B.E",
		     "skills": "html, Javascript, PHP Developer, PHP Software Developer, web developer, Web Designer Developer, PHP Programmer,"
		  }
		</script>
		";i:5;N;}