a:6:{i:0;s:10288:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for production chemist in nabha patiala</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.shivshaktijobs.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.shivshaktijobs.com/jobs-gallery.htm" title="Jobs Gallery">Jobs Gallery</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for production chemist in nabha patiala</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">Production Chemist</div>
									<p class="mt7px fw6">Patiala, Nabha</p>
									
				<br>
				<p class="aj mt7px">To allocate the work among operators on a daily basis on machines/work center / shifts and<br />
prepares shift schedules.<br />
 To supervise the production activities on a day-to-day basis guiding the operators and trouble<br />
shooting for smooth operation of machines/processes.<br />
To help prepare documentation like Batch Manufacturing Records, protocols etc.<br />
Working in tablets, capsules & dry syrup production department.<br />
 Maintaining of all documents related to manufacturing areas as per cGMP.<br />
 Preparation of daily production report and man power allocation.<br />
 Active calculation and batch reconciliation on various stages.<br />
 In process checking on various intermediate stages.<br />
 Review of batch manufacturing record and other documents for its completion of various<br />
intermediate and final stages.<br />
 Handling of validation batches.<br />
 Co-operating in internal and external audits.<br />
 Written the BPR’S (Batch production records).<br />
 To ensure all activities should maintaining GMP & following SOP.<br />
 Equipment cleaning log books.<br />
 Preparation of Batch manufacturing record.<br />
 Quality maintain in process area.<br />
 Overall inspection of in process manufacturing area and records on observation sheet and get<br />
comply be online basis.<br />
 Sampling of intermediates & finished product for QC testing.<br />
 Can handle effectively tablets (granulation, compression & coating), capsules manufacturing<br />
& various production related activities.<br />
 To handle the material complaint along with seniors and communicate the complaint to the<br />
production manager & development dept.<br />
 Filling of deviation from in case of any deviation in the process.<br />
 Handling of whole shop floor in a shift in relation to the production job.<br />
 Dispensing of material which are required for manufacturing operation.<br />
Equipment handling:-</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">6 - 9 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 3  Lac  To  4  Lac  50 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Manufacturing / Production / Quality</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">B.Pharma, B.Sc</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Production Chemist</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Pharmacy</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">Vidyadhar Tiwari</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">Ward No. 1, Oppo. Govt. School</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9882030362 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:shivshaktijobworks@gmail.com"> shivshaktijobworks@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="770395">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="890693"><input type="hidden" name="subject" value="Applied for Production Chemist">
					</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-solan.htm" title="Jobs in Solan">Solan</a> <b class="alpha50 bn small">(41)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-baddi-chandigarh.htm" title="Jobs in Baddi">Baddi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-hyderabad.htm" title="Jobs in Hyderabad">Hyderabad</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-patiala.htm" title="Jobs in Patiala">Patiala</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-sirmour.htm" title="Jobs in Sirmour">Sirmour</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="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">(25)</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">(5)</span><a href="jobs-in-biotech-scientist-fid.htm" title="Pharma / R&D / Biotech Jobs">Pharma / R&D / Biotech</a></p>
										<p class="mb5px "><span class="fr">(3)</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">(3)</span><a href="jobs-in-sales-marketing-business-development-telecaller-fid.htm" title="Sales & Marketing / Business Development/telecaller Jobs">Sales & Marketing / Business D...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-hr-recruitment-administration-ir-training-development-operations-fid.htm" title="HR / Recruitment / Administration / IR / Training & Development / Operations Jobs">HR / Recruitment / Administrat...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-cargo-freight-transportation-packaging-shipping-logistic-fid.htm" title="Cargo / Freight / Transportation / Packaging / Shipping/Logistic Jobs">Cargo / Freight / Transportati...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-front-office-reception-computer-operator-assistant-fid.htm" title="Front Office / Reception/Computer Operator/Assistant Jobs">Front Office / Reception/Compu...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-computers-it-fid.htm" title="IT Hardware / Technical Support / Telecom Engineering Jobs">IT Hardware / Technical Suppor...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-fresh-graduate-fid.htm" title="Fresher / Trainee Jobs">Fresher / Trainee</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-supply-chain-purchase-procurement-fid.htm" title="Supply Chain / Purchase / Procurement Jobs">Supply Chain / Purchase / Proc...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</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: 'd0R4T1NSVGVURDhaakRVaXNiQk5QUT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:76:"Job openings for production chemist in nabha patiala | Shiv Shakti Job Works";i:2;s:182:"Production Chemist Jobs,Production Chemist Jobs in Patiala,Production Chemist Vacancy in Patiala,Production Chemist jobs in India,Manufacturing / Production / Quality jobs in Patiala";i:3;s:266:"Apply for Production Chemist Jobs in Patiala India - Production Chemist Vacancy  in Manufacturing / Production / Quality field with 6 to 9 years Work Experience, Key Skills are Production Chemist, Pharmacy, Manufacturing / Production / Quality jobs in Patiala  India";i:4;s:2459:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Production Chemist",
		  "baseSalary": " 3  Lac  To  4  Lac  50 Thousand ",
		  "description": "To allocate the work among operators on a daily basis on machines/work center / shifts and
prepares shift schedules.
 To supervise the production activities on a day-to-day basis guiding the operators and trouble
shooting for smooth operation of machines/processes.
To help prepare documentation like Batch Manufacturing Records, protocols etc.
Working in tablets, capsules & dry syrup production department.
 Maintaining of all documents related to manufacturing areas as per cGMP.
 Preparation of daily production report and man power allocation.
 Active calculation and batch reconciliation on various stages.
 In process checking on various intermediate stages.
 Review of batch manufacturing record and other documents for its completion of various
intermediate and final stages.
 Handling of validation batches.
 Co-operating in internal and external audits.
 Written the BPR’S (Batch production records).
 To ensure all activities should maintaining GMP & following SOP.
 Equipment cleaning log books.
 Preparation of Batch manufacturing record.
 Quality maintain in process area.
 Overall inspection of in process manufacturing area and records on observation sheet and get
comply be online basis.
 Sampling of intermediates & finished product for QC testing.
 Can handle effectively tablets (granulation, compression & coating), capsules manufacturing
& various production related activities.
 To handle the material complaint along with seniors and communicate the complaint to the
production manager & development dept.
 Filling of deviation from in case of any deviation in the process.
 Handling of whole shop floor in a shift in relation to the production job.
 Dispensing of material which are required for manufacturing operation.
Equipment handling:-",
		  "educationRequirements": "B.Pharma, B.Sc",
		  "experienceRequirements": "6 - 9 Years",
		  "industry": "Manufacturing / Production / Quality",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Punjab",
		      "addressRegion": "Patiala, Nabha"
		    }
		  },
		 "qualifications": "B.Pharma, B.Sc",
		     "skills": "Production Chemist, Pharmacy"
		  }
		</script>
		";i:5;N;}