a:6:{i:0;s:14543:"				<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>HR Recruiter Freshers Job For Yes Tech Solutions</h1></div>
					<p class="breadcrumb ar uu small"> <a href="https://www.ytsolutions.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.ytsolutions.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> HR Recruiter Freshers Job For Yes Tech Solutions</p>
									<p class="mb5px"><i class="fa fa-briefcase mr7px fl w15px alpha50"></i> 0 - 2 Years</p>
				
									<p class="mb10px"><i class="fa fa-map-marker mr7px fl pl1px w15px alpha50"></i>Kolkata</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="367756">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="502038"><input type="hidden" name="subject" value="Applied for HR Recruiter Freshers job for Yes Tech Solutions">
					</form>
					</div>
			
						
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Job Description</p>
				<p class="aj mt10px">Job brief<br />
<br />
We are looking for a HR Recruiter , from talent sourcing and attracting candidates to interviewing and hiring great employees.<br />
<br />
What does a Recruiter do?<br />
<br />
A successful recruiter will collaborate with department managers on a regular basis and proactively identify future hiring needs. You should also be able to attract candidates using various sources, like social media networks and employee referrals. Our ideal recruiter will be in screening, interviewing and assessing candidates.<br />
<br />
Ultimately, the responsibilities of the Recruiter are to ensure our company attracts, hires and retains the best employees, while growing a strong talent pipeline.<br />
<br />
Responsibilities<br />
Design and implement overall recruiting strategy<br />
Develop and update job descriptions and job specifications<br />
Perform job and task analysis to document job requirements and objectives<br />
Prepare recruitment materials and post jobs to appropriate job board/newspapers/colleges etc<br />
Source and recruit candidates by using databases, social media etc<br />
Screen candidates resumes and job applications<br />
Conduct interviews using various reliable recruiting and selection tools/methods to filter candidates within schedule<br />
Assess applicants’relevant knowledge, skills, soft skills, experience and aptitudes<br />
Onboard new employees in order to become fully integrated<br />
Monitor and apply HR recruiting best practices<br />
Act as a point of contact and build influential candidate relationships during the selection process<br />
Promote company’s reputation as “best place to work”<br />
Requirements<br />
Recruiter (either anin-house recruiter or a staffing agency recruiter)<br />
Solid ability to conduct different types of interviews (structured, competency-based, stress etc)<br />
Hands on experience with various selection processes (phone interviewing, reference check etc)<br />
Ability to organize skills assessment centers.<br />
Familiarity with HR databases, Applicant Tracking Systems and Candidate Management Systems<br />
Hands-on experience with recruiting software, as well a</p>
				
				<table class="w100 formTable bdr0 mt10px">				
											<tr>
							<td class="w22 alpha75 p5px">Salary</td>
							<td class="p5px"> 60 Thousand  To  70 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="w22 alpha75 p5px">Industry</td>
					<td class="p5px">HR / Recruitment / Administration / IR</td>
					</tr>
									<tr>
				<td class="w22 alpha75 p5px">Work Experience</td>
				<td class="p5px">0 - 2 Years</td>
				</tr>
									<tr>
					<td class="w22 alpha75 p5px">Qualification</td>
					<td class="p5px">Other Bachelor Degree</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">HR Recruiter</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">Yes Tech Solutions</p></td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">YTS</td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:ahmed@yestechsoft.com"> ahmed@yestechsoft.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="367756">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="502038"><input type="hidden" name="subject" value="Applied for HR Recruiter Freshers job for Yes Tech Solutions">
					</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-chennai.htm" title="Jobs in Chennai">Chennai</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-kolkata.htm" title="Jobs in Kolkata">Kolkata</a> <b class="alpha50 bn small">(48)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-delhi.htm" title="Jobs in Delhi">Delhi</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-kharagpur.htm" title="Jobs in Kharagpur">Kharagpur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-paschim-medinipur.htm" title="Jobs in Paschim Medinipur">Paschim Medinipur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-bangalore.htm" title="Jobs in Bangalore">Bangalore</a> <b class="alpha50 bn small">(5)</b></span>
										<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">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-pune.htm" title="Jobs in Pune">Pune</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-navi-mumbai.htm" title="Jobs in Navi Mumbai">Navi Mumbai</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-mohali.htm" title="Jobs in Mohali">Mohali</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-guwahati.htm" title="Jobs in Guwahati">Guwahati</a> <b class="alpha50 bn small">(1)</b></span>
											<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><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>
												<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-bahrain.htm" title="Jobs in Bahrain">Bahrain</a> <b class="alpha50 bn small">(2)</b></span>
											<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></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-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxation</a> <b class="alpha50 bn small">(6)</b></span>
										<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">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-education-teaching-training-counselling-fid.htm" title="Education / Teaching / Training / Counselling / Academic Jobs">Education / Teaching / Training / Counselling / Academic</a> <b class="alpha50 bn small">(1)</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">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-hotel-travel-fid.htm" title="Hotel / Travel / Airlines Jobs">Hotel / Travel / Airlines</a> <b class="alpha50 bn small">(12)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-human-resources-fid.htm" title="HR / Recruitment / Administration / IR Jobs">HR / Recruitment / Administration / IR</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-application-programming-fid.htm" title="IT Software - Application Programming / Maintenance Jobs">IT Software - Application Programming / Maintenance</a> <b class="alpha50 bn small">(9)</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">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-system-programming-fid.htm" title="IT Software - System Programming Jobs">IT Software - System Programming</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-call-center-medical-transcription-fid.htm" title="ITES / BPO / KPO / LPO / Customer Service / Operations Jobs">ITES / BPO / KPO / LPO / Customer Service / Operations</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Quality</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-advertisement-marketing-fid.htm" title="Marketing / Advertising / PR / Media Planning Jobs">Marketing / Advertising / PR / Media Planning</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-biotech-scientist-fid.htm" title="Pharma / R&D / Biotech Jobs">Pharma / R&D / Biotech</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-property-construction-fid.htm" title="Real Estate / Construction Jobs">Real Estate / Construction</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-sales-marketing-fid.htm" title="Sales/Marketing Jobs">Sales/Marketing</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></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: 'YzJmSnFWRVVYVGFYU0lYeVk3aTJCZz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:116:"HR Recruiter Freshers job for Yes Tech Solutions Jobs in Kolkata - Vacancy in HR / Recruitment / Administration / IR";i:2;s:304:"HR Recruiter Freshers job for Yes Tech Solutions Jobs,HR Recruiter Freshers job for Yes Tech Solutions Jobs in Kolkata,HR Recruiter Freshers job for Yes Tech Solutions Vacancy in Kolkata,HR Recruiter Freshers job for Yes Tech Solutions jobs in India,HR / Recruitment / Administration / IR jobs in Kolkata";i:3;s:314:"Apply for HR Recruiter Freshers job for Yes Tech Solutions Jobs in Kolkata India - HR Recruiter Freshers job for Yes Tech Solutions Vacancy  in HR / Recruitment / Administration / IR field with 0 to 2 years Work Experience, Key Skills are HR Recruiter, HR / Recruitment / Administration / IR jobs in Kolkata  India";i:4;s:2723:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "HR Recruiter Freshers job for Yes Tech Solutions",
		  "baseSalary": " 60 Thousand  To  70 Thousand ",
		  "description": "Job brief

We are looking for a HR Recruiter , from talent sourcing and attracting candidates to interviewing and hiring great employees.

What does a Recruiter do?

A successful recruiter will collaborate with department managers on a regular basis and proactively identify future hiring needs. You should also be able to attract candidates using various sources, like social media networks and employee referrals. Our ideal recruiter will be in screening, interviewing and assessing candidates.

Ultimately, the responsibilities of the Recruiter are to ensure our company attracts, hires and retains the best employees, while growing a strong talent pipeline.

Responsibilities
Design and implement overall recruiting strategy
Develop and update job descriptions and job specifications
Perform job and task analysis to document job requirements and objectives
Prepare recruitment materials and post jobs to appropriate job board/newspapers/colleges etc
Source and recruit candidates by using databases, social media etc
Screen candidates resumes and job applications
Conduct interviews using various reliable recruiting and selection tools/methods to filter candidates within schedule
Assess applicants’relevant knowledge, skills, soft skills, experience and aptitudes
Onboard new employees in order to become fully integrated
Monitor and apply HR recruiting best practices
Act as a point of contact and build influential candidate relationships during the selection process
Promote company’s reputation as “best place to work”
Requirements
Recruiter (either anin-house recruiter or a staffing agency recruiter)
Solid ability to conduct different types of interviews (structured, competency-based, stress etc)
Hands on experience with various selection processes (phone interviewing, reference check etc)
Ability to organize skills assessment centers.
Familiarity with HR databases, Applicant Tracking Systems and Candidate Management Systems
Hands-on experience with recruiting software, as well a",
		  "educationRequirements": "Other Bachelor Degree",
		  "experienceRequirements": "0 - 2 Years",
		  "industry": "HR / Recruitment / Administration / IR",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "West Bengal",
		      "addressRegion": "Kolkata"
		    }
		  },
		 "qualifications": "Other Bachelor Degree",
		     "skills": "HR Recruiter"
		  }
		</script>
		";i:5;N;}