a:6:{i:0;s:9498:"				<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>Senior Manager Learning Development</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.delhiconsultancy.co.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.delhiconsultancy.co.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Senior Manager Learning Development</p>
									<p class="mb5px"><i class="fa fa-briefcase mr7px fl w15px alpha50"></i> 8 - 16 Years</p>
				
									<p class="mb10px"><i class="fa fa-map-marker mr7px fl pl1px w15px alpha50"></i>Mumbai</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="243487">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="849351"><input type="hidden" name="subject" value="Applied for Senior Manager Learning Development">
					</form>
					</div>
			
						
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Job Description</p>
				<p class="aj mt10px">Company: Leading Mnc Client of Delhi Consultancy Service Into Pharmaceutical Business<br />
industry: Pharmaceutical<br />
job Location: Mumbai <br />
major Activities / Tasks<br />
1) Set the Short & Long Term Learning Agenda for the Domain in Alignment with Business Needs and Priorities<br />
a) Define the Curriculum Framework and Build the Learning Curriculum for Different Stake Holders in that Domain as per Approved Glide Path (syllabus for Different Role Holders So that Learning Happens in a Continuous Manner)<br />
b) Publish Signed Off Annual Learning Focus Areas for the Domain - Building Pivotal Capabilities that Will Be Driven Seamlessly Across<br />
2) Drive New Intervention Launches in An Efficient and Effective Manner in Line with the Plan<br />
a) Consolidate the List of New Interventions to Be Launched<br />
b) Conduct Detailed Diagnostics and Identify the Most Effective Means (platform, Methodology Etc.) of Addressing the Need<br />
c) Design a Detailed Project Plan Which Includes Details of Experts to Be Partnered (internal/external), Timelines Etc.<br />
d) Ensure Robust and Instructionally Sound Courses are Launched in Line with the Standard Process (6ds) as per Plan<br />
e) Ensure Periodical Updation of Existing Courses as per Plan<br />
3) Support Head of Functional Academy in Driving the Governance Process in An Effective Manner<br />
a) Conduct Regular Council Meetings as per Process and Plan<br />
b) Implementation of Decisions & Action Points as Decided in the Council<br />
c) Periodical Updates / Dashboards to Council Members<br />
d) Continuous Engagement of Council Members in the Learning Agenda<br />
e) Facilitator Management</p>
				
				<table class="w100 formTable bdr0 mt10px">				
											<tr>
							<td class="w22 alpha75 p5px">Salary</td>
							<td class="p5px"> 10  Lac  To   30 Lac  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">8 - 16 Years</td>
				</tr>
									<tr>
					<td class="w22 alpha75 p5px">Qualification</td>
					<td class="p5px">M.B.A/PGDM</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</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> human resource management</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> recruitment</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">Leading MNC Client of Delhi Consultancy Service into Pharmaceutical Business Industry: Pharmaceutical</p></td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">Leading MNC Client of Delhi Consultancy Service into Pharmaceutical Business
Industry: Pharmaceutical</td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px">Contact Person</td>
						<td class="p5px">Amit Kumar</td>
						</tr>					
												<tr>
						<td class="w22 alpha75 p5px">Address</td>
						<td class="p5px">Mumbai</td>
						</tr>					
												<tr>
						<td class="w22 alpha75 p5px">Mobile </td>
						<td class="p5px">9540085064 </td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:amit@delhiconsultancy.com"> amit@delhiconsultancy.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="243487">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="849351"><input type="hidden" name="subject" value="Applied for Senior Manager Learning Development">
					</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-noida.htm" title="Jobs in Noida">Noida</a> <b class="alpha50 bn small">(2)</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">(5)</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">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-greaternoida.htm" title="Jobs in Greater Noida">Greater Noida</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-analytics-fid.htm" title="Analytic and Business Intelligence Jobs">Analytic and Business Intelligence</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-export-import-merchandising-fid.htm" title="Export / Import / Merchandising Jobs">Export / Import / Merchandising</a> <b class="alpha50 bn small">(1)</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">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-sales-marketing-fid.htm" title="Sales/Marketing Jobs">Sales/Marketing</a> <b class="alpha50 bn small">(3)</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: 'aW03dHo5WExqc0Q2TyszekViWlpyZz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:102:"Senior Manager Learning Development Jobs in Mumbai - Vacancy in HR / Recruitment / Administration / IR";i:2;s:249:"Senior Manager Learning Development Jobs,Senior Manager Learning Development Jobs in Mumbai,Senior Manager Learning Development Vacancy in Mumbai,Senior Manager Learning Development jobs in India,HR / Recruitment / Administration / IR jobs in Mumbai";i:3;s:317:"Apply for Senior Manager Learning Development Jobs in Mumbai India - Senior Manager Learning Development Vacancy  in HR / Recruitment / Administration / IR field with 8 to 16 years Work Experience, Key Skills are hr, human resource management, recruitment, HR / Recruitment / Administration / IR jobs in Mumbai  India";i:4;s:2276:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Senior Manager Learning Development",
		  "baseSalary": " 10  Lac  To   30 Lac ",
		  "description": "Company: Leading Mnc Client of Delhi Consultancy Service Into Pharmaceutical Business
industry: Pharmaceutical
job Location: Mumbai 
major Activities / Tasks
1) Set the Short & Long Term Learning Agenda for the Domain in Alignment with Business Needs and Priorities
a) Define the Curriculum Framework and Build the Learning Curriculum for Different Stake Holders in that Domain as per Approved Glide Path (syllabus for Different Role Holders So that Learning Happens in a Continuous Manner)
b) Publish Signed Off Annual Learning Focus Areas for the Domain - Building Pivotal Capabilities that Will Be Driven Seamlessly Across
2) Drive New Intervention Launches in An Efficient and Effective Manner in Line with the Plan
a) Consolidate the List of New Interventions to Be Launched
b) Conduct Detailed Diagnostics and Identify the Most Effective Means (platform, Methodology Etc.) of Addressing the Need
c) Design a Detailed Project Plan Which Includes Details of Experts to Be Partnered (internal/external), Timelines Etc.
d) Ensure Robust and Instructionally Sound Courses are Launched in Line with the Standard Process (6ds) as per Plan
e) Ensure Periodical Updation of Existing Courses as per Plan
3) Support Head of Functional Academy in Driving the Governance Process in An Effective Manner
a) Conduct Regular Council Meetings as per Process and Plan
b) Implementation of Decisions & Action Points as Decided in the Council
c) Periodical Updates / Dashboards to Council Members
d) Continuous Engagement of Council Members in the Learning Agenda
e) Facilitator Management",
		  "educationRequirements": "M.B.A/PGDM",
		  "experienceRequirements": "8 - 16 Years",
		  "industry": "HR / Recruitment / Administration / IR",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Maharashtra",
		      "addressRegion": "Mumbai"
		    }
		  },
		 "qualifications": "M.B.A/PGDM",
		     "skills": "hr, human resource management, recruitment"
		  }
		</script>
		";i:5;N;}