a:6:{i:0;s:7293:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for network administrator in jaipur</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.leadmanpower.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.leadmanpower.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for network administrator in jaipur</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">Network Administrator</div>
									<p class="mt7px fw6">Jaipur</p>
									
				<br>
				<p class="aj mt7px">Job Responsibility:-<br />
Installing and integrating new server hardware or applications.<br />
Keeping an eye out for needed updates.<br />
Support and administer third-party applications.<br />
Ensure network security and connectivity.<br />
Define network policies procedures<br />
<br />
Required Candidate profile<br />
<br />
Ability to set up and configure server hardware.<br />
Hands on experience in networking, routing and switching.<br />
Experience with firewalls, Internet VPN’s remote implementation, troubleshooting.<br />
RoleNetwork Administrator<br />
Industry TypeIT-Hardware & Networking<br />
Functional AreaIT Software - Network Administration, Security<br />
Employment TypeFull Time, Permanent<br />
Role CategoryAdmin/Maintenance/Security/Datawarehousing</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">1 - 2 Years</td>
				</tr>			
									<tr>
					<td class="alpha75 p5px">Salary</td>
					<td class="p5px">Not Disclosed</td>
					</tr>
									
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">IT Hardware / Technical Support / Telecom Engineering</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">B.C.A</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Networking Engineer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Network Administrator</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Hardware Networking</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">Rajesh Singh Shekhawat</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">44A, Ayodhya Colony, Heerapura, DCM, Ajmer Road</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9001995370 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:career@leadmanpower.com"> career@leadmanpower.com </a></td>
						</tr>
										
					</table>
									
				<br />
				
								</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-jaipur.htm" title="Jobs in Jaipur">Jaipur</a> <b class="alpha50 bn small">(9)</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">(3)</span><a href="jobs-in-defence-forces-security-forces-fid.htm" title="Defence Forces / Security Forces Jobs">Defence Forces / Security Forc...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-public-relation-pr-advertising-events-fid.htm" title="Public Relation (PR) /  Advertising / Events Jobs">Public Relation (PR) /  Advert...</a></p>
										<p class="mb5px "><span class="fr">(1)</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">(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-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-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-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">(1)</span><a href="jobs-in-engineering-design-rd-quality-fid.htm" title="Engineering/ Engineering Design / R&D / Quality Jobs">Engineering/ Engineering Desig...</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: 'RG1Oako5QmQ2Rmdrd09qR0w2Y25LUT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:81:"Job openings for network administrator in jaipur | Lead Manpower Services Pvt Ltd";i:2;s:208:"Network Administrator Jobs,Network Administrator Jobs in Jaipur,Network Administrator Vacancy in Jaipur,Network Administrator jobs in India,IT Hardware / Technical Support / Telecom Engineering jobs in Jaipur";i:3;s:339:"Apply for Network Administrator Jobs in Jaipur India - Network Administrator Vacancy  in IT Hardware / Technical Support / Telecom Engineering field with 1 to 2 years Work Experience, Key Skills are Networking Engineer, Network Administrator, Hardware Networking, IT Hardware / Technical Support / Telecom Engineering jobs in Jaipur  India";i:4;s:1376:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Network Administrator",
		  "baseSalary": "",
		  "description": "Job Responsibility:-
Installing and integrating new server hardware or applications.
Keeping an eye out for needed updates.
Support and administer third-party applications.
Ensure network security and connectivity.
Define network policies procedures

Required Candidate profile

Ability to set up and configure server hardware.
Hands on experience in networking, routing and switching.
Experience with firewalls, Internet VPN’s remote implementation, troubleshooting.
RoleNetwork Administrator
Industry TypeIT-Hardware & Networking
Functional AreaIT Software - Network Administration, Security
Employment TypeFull Time, Permanent
Role CategoryAdmin/Maintenance/Security/Datawarehousing",
		  "educationRequirements": "B.C.A",
		  "experienceRequirements": "1 - 2 Years",
		  "industry": "IT Hardware / Technical Support / Telecom Engineering",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Rajasthan",
		      "addressRegion": "Jaipur"
		    }
		  },
		 "qualifications": "B.C.A",
		     "skills": "Networking Engineer, Network Administrator, Hardware Networking"
		  }
		</script>
		";i:5;N;}