a:6:{i:0;s:13762:"				<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>Job openings for hr manager in mumbai</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.adroittrainers.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.adroittrainers.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for hr manager in mumbai</p>
									<div class="pt10px">
				<div class="xxxlarge fw6 dif">Dy. Manager HR At (Mahalaxmi West, Mumbai) (Position Closed)</div>
									<p class="mt7px fw6">Mumbai</p>
									
				<br>
				<p class="aj mt7px">About Company:<br />
<br />
World\'s largest outsourcing and technology services specialist for governments and diplomatic missions worldwide. The company manages the administrative and non-judgmental tasks related to visa, passport, identity management and other citizen services for its client governments.<br />
<br />
Education: MBA /PG Diploma<br />
Experience: 4 + Years<br />
<br />
Role & Responsibilities:<br />
<br />
v    Recruitment <br />
   Responsible for sourcing of candidates thru Job Portal, Database, Employee References.<br />
  Scheduling Interview, conducting Preliminary Interview.<br />
  Salary Fitment, Rolling out Offer Letter to candidates in coordination with Head Office, follow up with candidates till their joining.<br />
  Preparing and Managing Database of all the candidates. <br />
<br />
v    Payroll Management<br />
<br />
   Ensuring accuracy and timelines in Payroll processing<br />
   Ensuring accuracy in validation, calculation and disbursement of monthly payouts, annual bonus and other reimbursement amounts<br />
   Coordination with outsourced payroll agency. Validation, correction and finalization of salary registers and related workings received from the payroll agency <br />
 <br />
v    Performance Management System <br />
<br />
   Quarterly performance pay - receiving performance rating from all departments, compiling and put up for final approval to department head.<br />
   Ensuring goal setting / KRA\'s for all the executives, Mid year review, Annual appraisal and feedback, Performance pay.<br />
  Follow up with the department for filling the Appraisal forms and return the form to HR department within the prescribed time. <br />
<br />
 v    HR Operations <br />
   Maintaining Database of Employees in HRIS, updating the same as and when required.<br />
   Keeping track of Probation, Confirmation, and Promotions of Employees.<br />
   Maintaining Personnel Records and Files of every Employee.<br />
   Keeping track of Transfer and Rotation of Employees as per Business Needs and Intervene if any issues.<br />
  Preparing and Issuing Relieving Certificates, Confirmation Letters, Training Certificates, Address</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  To  5  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">HR / Recruitment / Administration / IR</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">M.B.A/PGDM</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">HR Management</span>
												<span class="bdr dib p2px10px mr5px mt2px"> human resource management</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">Leading MNC</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">The company manages the administrative and non-judgmental tasks related to visa, passport, identity management and other citizen services for its client governments.</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:adroitnaukri8@gmail.com"> adroitnaukri8@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="277440">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="793811"><input type="hidden" name="subject" value="Applied for Dy. Manager HR at (Mahalaxmi West, Mumbai) (Position Closed)">
					</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-ahmedabad.htm" title="Jobs in Ahmedabad">Ahmedabad</a> <b class="alpha50 bn small">(16)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-mumbai.htm" title="Jobs in Mumbai">Mumbai</a> <b class="alpha50 bn small">(14)</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">(6)</b></span>
										<span class="dib p5px10px c2px bdr 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 bdr 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 bdr mr7px mb7px "><a class="dif" href="jobs-in-delhi.htm" title="Jobs in Delhi">Delhi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-vadodara.htm" title="Jobs in Vadodara">Vadodara</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-kolkata.htm" title="Jobs in Kolkata">Kolkata</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-jalandhar.htm" title="Jobs in Jalandhar">Jalandhar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-gwalior.htm" title="Jobs in Gwalior">Gwalior</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-dehradun.htm" title="Jobs in Dehradun">Dehradun</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-bhopal.htm" title="Jobs in Bhopal">Bhopal</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-indore.htm" title="Jobs in Indore">Indore</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-rajkot.htm" title="Jobs in Rajkot">Rajkot</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-surat.htm" title="Jobs in Surat">Surat</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-jaipur.htm" title="Jobs in Jaipur">Jaipur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-jodhpur.htm" title="Jobs in Jodhpur">Jodhpur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-valsad.htm" title="Jobs in Valsad">Valsad</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><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 bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-uae.htm" title="Jobs in United Arab Emirates">United Arab Emirates</a> <b class="alpha50 bn small">(1)</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="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">(15)</span><a href="jobs-in-sales-marketing-fid.htm" title="Sales/Marketing Jobs">Sales/Marketing</a></p>
										<p class="mb5px "><span class="fr">(7)</span><a href="jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxati...</a></p>
										<p class="mb5px "><span class="fr">(5)</span><a href="jobs-in-human-resources-fid.htm" title="HR / Recruitment / Administration / IR Jobs">HR / Recruitment / Administrat...</a></p>
										<p class="mb5px "><span class="fr">(5)</span><a href="jobs-in-call-center-medical-transcription-fid.htm" title="ITES / BPO / KPO / LPO / Customer Service / Operations Jobs">ITES / BPO / KPO / LPO / Custo...</a></p>
										<p class="mb5px "><span class="fr">(4)</span><a href="jobs-in-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Q...</a></p>
										<p class="mb5px "><span class="fr">(3)</span><a href="jobs-in-hotel-travel-fid.htm" title="Hotel / Travel / Airlines Jobs">Hotel / Travel / Airlines</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-legal-services-fid.htm" title="Legal / Law Services / Judiciary Jobs">Legal / Law Services / Judicia...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-medical-health-care-hospitals-fid.htm" title="Medical / Health Care / Hospitals Jobs">Medical / Health Care / Hospit...</a></p>
										<p class="mb5px "><span class="fr">(2)</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">(2)</span><a href="jobs-in-corporate-planning-fid.htm" title="Corporate Planning & Strategy / Management Consulting Jobs">Corporate Planning & Strategy ...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-property-construction-fid.htm" title="Real Estate / Construction Jobs">Real Estate / Construction</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-oil-gas-petroleum-fid.htm" title="Oil / Gas / Petroleum Jobs">Oil / Gas / Petroleum</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-front-office-data-entry-fid.htm" title="Front Office / Executive Assistant / Data Entry Jobs">Front Office / Executive Assis...</a></p>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
									
				</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: 'RFh6T1M5MzRTOUZOSWR6TTlQajZFdz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:74:"Job openings for hr manager in mumbai | Adroit Learning & Manpower Pvt.Ltd";i:2;s:349:"Dy. Manager HR at (Mahalaxmi West, Mumbai) (Position Closed) Jobs,Dy. Manager HR at (Mahalaxmi West, Mumbai) (Position Closed) Jobs in Mumbai,Dy. Manager HR at (Mahalaxmi West, Mumbai) (Position Closed) Vacancy in Mumbai,Dy. Manager HR at (Mahalaxmi West, Mumbai) (Position Closed) jobs in India,HR / Recruitment / Administration / IR jobs in Mumbai";i:3;s:365:"Apply for Dy. Manager HR at (Mahalaxmi West, Mumbai) (Position Closed) Jobs in Mumbai India - Dy. Manager HR at (Mahalaxmi West, Mumbai) (Position Closed) Vacancy  in HR / Recruitment / Administration / IR field with 4 to 10 years Work Experience, Key Skills are HR Management, human resource management, HR / Recruitment / Administration / IR jobs in Mumbai  India";i:4;s:2718:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Dy. Manager HR at (Mahalaxmi West, Mumbai) (Position Closed)",
		  "baseSalary": " 3  Lac  To  5  Lac ",
		  "description": "About Company:

World\'s largest outsourcing and technology services specialist for governments and diplomatic missions worldwide. The company manages the administrative and non-judgmental tasks related to visa, passport, identity management and other citizen services for its client governments.

Education: MBA /PG Diploma
Experience: 4 + Years

Role & Responsibilities:

v    Recruitment 
   Responsible for sourcing of candidates thru Job Portal, Database, Employee References.
  Scheduling Interview, conducting Preliminary Interview.
  Salary Fitment, Rolling out Offer Letter to candidates in coordination with Head Office, follow up with candidates till their joining.
  Preparing and Managing Database of all the candidates. 

v    Payroll Management

   Ensuring accuracy and timelines in Payroll processing
   Ensuring accuracy in validation, calculation and disbursement of monthly payouts, annual bonus and other reimbursement amounts
   Coordination with outsourced payroll agency. Validation, correction and finalization of salary registers and related workings received from the payroll agency 
 
v    Performance Management System 

   Quarterly performance pay - receiving performance rating from all departments, compiling and put up for final approval to department head.
   Ensuring goal setting / KRA\'s for all the executives, Mid year review, Annual appraisal and feedback, Performance pay.
  Follow up with the department for filling the Appraisal forms and return the form to HR department within the prescribed time. 

 v    HR Operations 
   Maintaining Database of Employees in HRIS, updating the same as and when required.
   Keeping track of Probation, Confirmation, and Promotions of Employees.
   Maintaining Personnel Records and Files of every Employee.
   Keeping track of Transfer and Rotation of Employees as per Business Needs and Intervene if any issues.
  Preparing and Issuing Relieving Certificates, Confirmation Letters, Training Certificates, Address",
		  "educationRequirements": "M.B.A/PGDM",
		  "experienceRequirements": "4 - 10 Years",
		  "industry": "HR / Recruitment / Administration / IR",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Maharashtra",
		      "addressRegion": "Mumbai"
		    }
		  },
		 "qualifications": "M.B.A/PGDM",
		     "skills": "HR Management, human resource management"
		  }
		</script>
		";i:5;N;}