a:6:{i:0;s:7721:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for nursing assistant in viman nagar pune</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.aonenursesbureau.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.aonenursesbureau.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for nursing assistant in viman nagar pune</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">Nursing Assistant</div>
									<p class="mt7px fw6">Pune, Viman Nagar</p>
									
				<br>
				<p class="aj mt7px">ROLE OBJECTIVE:<br />
1.1.Provide direct and indirect patient care in the emergency care setting.<br />
1.2.Identifying and providing for physical, emotional, and developmental patient needs.<br />
1.3.Counseling patients and their families; explaining the IVF procedures planned for the<br />
patient.<br />
1.4.Following all standard rules, guideline and achieving compliances as per the policies of<br />
universal precaution, Biomedical Hazard, infection control.<br />
1.5.Maintaining a clean and safe environment.<br />
1.6.Providing for and respecting the patient’s privacy and confidentiality.<br />
1.7.Resolves patient problems and needs by utilizing multidisciplinary team strategies.<br />
1.8.Assures quality of care by adhering to therapeutic standards; measuring health outcomes<br />
against patient care goals and hospital or regulatory standards.<br />
1.9.Safeguarding and inventorying equipment and supplies.<br />
1.10. Care and maintenance of ward linen and Equipment.<br />
1.11. Regularly doing emergency drill along with other staff like CPR/AED drills.<br />
1.12. Nursing staff will be having rotation at following station & have to perform all nursing<br />
related work on these stations: USG Room/Injection Room/Ward/OT/PCPNDT.<br />
1.13. To ensure following things get done meticulously in Scan Room, while maintaining<br />
dignity, sympathy, courtesy towards patient/Commercial Oocyte Donor.<br />
1.14. To ensure following things get done meticulously in Injection Room:<br />
1.15. To ensure following things get done meticulously in PCPNDT Room.<br />
1.16. Submitting all PCPNDT forms as required by PCPNDT office on proper time.<br />
FUNCTIONAL SKILL SET REQUIRED<br />
2.1. Clinical skills<br />
2.2. Observational Skills<br />
2.3. Excellent Team work<br />
2.4. Verbal & Written communication skills<br />
2.5. Ability to deal with emotionally charged & pressured situations.<br />
2.6.Multitasking</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">0 - 6 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 2  Lac  50 Thousand  To  3  Lac  50 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Health Care / Pharmaceuticals / Medical</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Advanced/Higher Diploma, Professional Degree, B.Sc</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Staff Nurse</span>
												<span class="bdr dib p2px10px mr5px mt2px"> GNM</span>
												<span class="bdr dib p2px10px mr5px mt2px"> BSc Nursing</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Staff Nurse</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Male Staff Nurse</span>
												<span class="bdr dib p2px10px mr5px mt2px"></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">Sakshi Jagtap</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">A-1 Nurses Bureau, Near Yogesh Cloth House, Old Mumbai-Pune Highway, Kasarwadi</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">7887872377 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:aonenursesbureau@gmail.com"> aonenursesbureau@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="343946">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="997779"><input type="hidden" name="subject" value="Applied for Nursing Assistant">
					</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-pune.htm" title="Jobs in Pune">Pune</a> <b class="alpha50 bn small">(2)</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">(2)</span><a href="jobs-in-health-care-pharmaceuticals-medical-fid.htm" title="Health Care / Pharmaceuticals / Medical Jobs">Health Care / Pharmaceuticals ...</a></p>
									
				</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: 'QjNDNlI3eHlqRXFKeitZYm1GVGVPQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:74:"Job openings for nursing assistant in viman nagar pune | A-1 Nurses Bureau";i:2;s:172:"Nursing Assistant Jobs,Nursing Assistant Jobs in Pune,Nursing Assistant Vacancy in Pune,Nursing Assistant jobs in India,Health Care / Pharmaceuticals / Medical jobs in Pune";i:3;s:297:"Apply for Nursing Assistant Jobs in Pune India - Nursing Assistant Vacancy  in Health Care / Pharmaceuticals / Medical field with 0 to 6 years Work Experience, Key Skills are Staff Nurse, GNM, BSc Nursing, Staff Nurse, Male Staff Nurse,, Health Care / Pharmaceuticals / Medical jobs in Pune  India";i:4;s:3082:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Nursing Assistant",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "",
	        "value":  "997779"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "",
	      "description": "",
	      "telephone" : "7887872377",
	      "email" : "aonenursesbureau@gmail.com"  
	       },
		  "url": "https://www.aonenursesbureau.com/job-openings-for-nursing-assistant-viman-nagar-pune-997779.htm",
          "datePosted": "2020-02-24",
          
		  "baseSalary": " 2  Lac  50 Thousand  To  3  Lac  50 Thousand ",
		  "description": "ROLE OBJECTIVE:
1.1.Provide direct and indirect patient care in the emergency care setting.
1.2.Identifying and providing for physical, emotional, and developmental patient needs.
1.3.Counseling patients and their families; explaining the IVF procedures planned for the
patient.
1.4.Following all standard rules, guideline and achieving compliances as per the policies of
universal precaution, Biomedical Hazard, infection control.
1.5.Maintaining a clean and safe environment.
1.6.Providing for and respecting the patient’s privacy and confidentiality.
1.7.Resolves patient problems and needs by utilizing multidisciplinary team strategies.
1.8.Assures quality of care by adhering to therapeutic standards; measuring health outcomes
against patient care goals and hospital or regulatory standards.
1.9.Safeguarding and inventorying equipment and supplies.
1.10. Care and maintenance of ward linen and Equipment.
1.11. Regularly doing emergency drill along with other staff like CPR/AED drills.
1.12. Nursing staff will be having rotation at following station & have to perform all nursing
related work on these stations: USG Room/Injection Room/Ward/OT/PCPNDT.
1.13. To ensure following things get done meticulously in Scan Room, while maintaining
dignity, sympathy, courtesy towards patient/Commercial Oocyte Donor.
1.14. To ensure following things get done meticulously in Injection Room:
1.15. To ensure following things get done meticulously in PCPNDT Room.
1.16. Submitting all PCPNDT forms as required by PCPNDT office on proper time.
FUNCTIONAL SKILL SET REQUIRED
2.1. Clinical skills
2.2. Observational Skills
2.3. Excellent Team work
2.4. Verbal & Written communication skills
2.5. Ability to deal with emotionally charged & pressured situations.
2.6.Multitasking",
		  "educationRequirements": "Advanced/Higher Diploma, Professional Degree, B.Sc",
		  "experienceRequirements": "0 - 6 Years",
		  "industry": "Health Care / Pharmaceuticals / Medical",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Maharashtra",
		      "addressRegion": "Pune, Viman Nagar"
		    }
		  },
		 "qualifications": "Advanced/Higher Diploma, Professional Degree, B.Sc",
		     "skills": "Staff Nurse, GNM, BSc Nursing, Staff Nurse, Male Staff Nurse,"
		  }
		</script>
		";i:5;N;}