a:6:{i:0;s:8685:"				<section id="middle">
				<div class="wrap" id="bodyFormat1">
				<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>Urgently Required Web Designer</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.hopesforever.com/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.hopesforever.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Urgently Required Web Designer</p>
									<p class="mb5px"><i class="fa fa-briefcase mr7px fl w15px alpha50"></i> 5 Years</p>
				
									<p class="mb10px"><i class="fa fa-map-marker mr7px fl pl1px w15px alpha50"></i>Chennai</p>
										
					<div>
					<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="296155">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="342957"><input type="hidden" name="subject" value="Applied for Urgently Required Web Designer">
					</form>
					</div>
			
						
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Job Description</p>
				<p class="aj mt10px">- Experience should be 5+yrs of hands on experience in Core Java, J2EE Skills<br />
<br />
- building Quality production systems.<br />
<br />
- Must have good framework experience in Spring & Hibernate.<br />
 <br />
- Hands-on expertise in building and deploying small-to-medium Web applications.<br />
 <br />
- Should have experience on Oracle/SQL/DB.<br />
<br />
- Experience in JavaScript is a plus.<br />
 <br />
- Excellent analytical/mathematical skills.<br />
<br />
- Very good knowledge of distributed systems.<br />
 <br />
- The candidate should have excellent verbal, written communication skills<br />
<br />
- should possess a strong presentation skills & ability to communicate deliverables to project leadership & the client.</p>
				
				<table class="w100 formTable bdr0 mt10px">				
											<tr>
							<td class="w22 alpha75 p5px">Salary</td>
							<td class="p5px"> 2  Lac  75 Thousand  To  4  Lac  75 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="w22 alpha75 p5px">Industry</td>
					<td class="p5px">IT Software - Ecommerce / Internet Technologies</td>
					</tr>
									<tr>
				<td class="w22 alpha75 p5px">Work Experience</td>
				<td class="p5px">5 Years</td>
				</tr>
									<tr>
					<td class="w22 alpha75 p5px">Qualification</td>
					<td class="p5px">M.C.A</td>
					</tr>					
									
				</table>
				
				
				</div>
				
				<br>
				<div class="bdrT pt20px">
									<p class="xlarge b">Key Skills</p>
					<div class="mt10px dif">
											<span class="bn dib p5px10px c2px headVr mr7px mb7px">Web Designing</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> Oracle</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> JavaScript</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> Core Java</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> J2EE</span>
											</div>
									</div>
				
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Company Profile</p>
				<div class="mt10px">
				
									<table class="w100 formTable bdr0 mt5px">
											<tr>
						<td class="w22 alpha75 p5px vat">Company Name</td>
						<td class="p5px vat"><p class="dif b">Hopes Forever Pvt. Ltd.</p></td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">As the rate of unemployment in India is skyrocketing, people are becoming more prone to its gloomy side. If you are also sick &amp; tired of hunting the best job for yourself, then &quot;HOPES FOREVER CONSULTANCY PVT. LTD.&quot; is there to help in every possible way. We leave no stone unturned to make your &quot;HOPES&quot; alive and get you the maximum possible.

 

Job Options to exercise your choice. Moreover, from our website, you can avail our support and services at any time of the day, without any hassle or so. All you need to do is pen down your requirements and our experts will handle</td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:dhiren@hopesforever.com"> dhiren@hopesforever.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="296155">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="342957"><input type="hidden" name="subject" value="Applied for Urgently Required Web Designer">
					</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="h h2"><b class="plusMinus"></b>
				<h2>Jobs by Location</h2>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-mumbai.htm" title="Jobs in Mumbai">Mumbai</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr 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 headVr mr7px mb7px "><a class="dif" href="jobs-in-saudi-arabia.htm" title="Jobs in Saudi Arabia">Saudi Arabia</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="h h2"><b class="plusMinus"></b>
				<h2>Jobs by Functional Area</h2>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-banking-fid.htm" title="Banking / Investments / Stock Market / Financial Services Jobs">Banking / Investments / Stock Market / Financial Services</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-fresh-graduate-fid.htm" title="Fresher / Trainee Jobs">Fresher / Trainee</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-front-office-data-entry-fid.htm" title="Front Office / Executive Assistant / Data Entry Jobs">Front Office / Executive Assistant / Data Entry</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-ecommerce-internet-marketing-fid.htm" title="IT Software - Ecommerce / Internet Technologies Jobs">IT Software - Ecommerce / Internet Technologies</a> <b class="alpha50 bn small">(1)</b></span>
									
				</div>
				</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: 'K0FtdXdVNHNsa00yS1g1ZTQ1b0ppQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:107:"Urgently Required Web Designer Jobs in Chennai - Vacancy in IT Software - Ecommerce / Internet Technologies";i:2;s:241:"Urgently Required Web Designer Jobs,Urgently Required Web Designer Jobs in Chennai,Urgently Required Web Designer Vacancy in Chennai,Urgently Required Web Designer jobs in India,IT Software - Ecommerce / Internet Technologies jobs in Chennai";i:3;s:329:"Apply for Urgently Required Web Designer Jobs in Chennai India - Urgently Required Web Designer Vacancy  in IT Software - Ecommerce / Internet Technologies field with 5 years Work Experience, Key Skills are Web Designing, Oracle, JavaScript, Core Java, J2EE, IT Software - Ecommerce / Internet Technologies jobs in Chennai  India";i:4;s:1360:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Urgently Required Web Designer",
		  "baseSalary": " 2  Lac  75 Thousand  To  4  Lac  75 Thousand ",
		  "description": "- Experience should be 5+yrs of hands on experience in Core Java, J2EE Skills

- building Quality production systems.

- Must have good framework experience in Spring & Hibernate.
 
- Hands-on expertise in building and deploying small-to-medium Web applications.
 
- Should have experience on Oracle/SQL/DB.

- Experience in JavaScript is a plus.
 
- Excellent analytical/mathematical skills.

- Very good knowledge of distributed systems.
 
- The candidate should have excellent verbal, written communication skills

- should possess a strong presentation skills & ability to communicate deliverables to project leadership & the client.",
		  "educationRequirements": "M.C.A",
		  "experienceRequirements": "5 Years",
		  "industry": "IT Software - Ecommerce / Internet Technologies",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Tamil Nadu",
		      "addressRegion": "Chennai"
		    }
		  },
		 "qualifications": "M.C.A",
		     "skills": "Web Designing, Oracle, JavaScript, Core Java, J2EE"
		  }
		</script>
		";i:5;N;}