a:6:{i:0;s:8393:"				<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 camp manager in saudi arabia</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.taexpo.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.taexpo.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for camp manager in saudi arabia</p>
									<div class="pt10px">
				<div class="xxxlarge fw6 dif">Camp Manager</div>
								
				<br>
				<p class="aj mt7px">1.Responsible for operational activities in the camp or rig under his supervision,<br />
Ensuring the daily good management of the location.<br />
2. Carry out the daily, weekly and monthly duties as laid out by the Company and below detailed<br />
.<br />
3. Fill and keep record of administrative forms in accordance with the Company rules.<br />
4. Manage the team of expatriate’s staff working at the camp and increase his motivation.<br />
5. Supervise and take part to the training of staff according to the rules of HSE, Food Hygiene and Safety, HACCP, etc.<br />
6. Responsible for requests warehouse, stocking and stock checking in addition to cost control reporting according to the rules made by the Company, always ensuring a minimum stock quantity for each item.<br />
7. Responsible for cold and dry stores in the location He is the only person<br />
Entitled to keep the keys and will be responsible for any eventual shortages.<br />
8. The Camp Boss must be clean, tidy and shall follow diligently the disciplinary <br />
rules laid out in his contract.<br />
9. Monthly Inventory with reported expiry date of all products<br />
.<br />
10. Inventory and record of sales of mini - market or bonded store (in case<br />
it exists), filling the relative form.<br />
11. P.O.B. duly signed by the Client or his Representative.<br />
12. Records of extra services and sales rendered to Clients, duly signed by the Client, reporting the number of budgeted Projects or refer to object or person<br />
, in order to be invoiced<br />
.<br />
13. Keep a record and recap of the weekly menu agreed with the Client, duly signed by the Client and Camp Boss and sent to the main office, with all documents.<br />
14. Fill a record with the weekly consumption divided by family.<br />
.<br />
15. Keep a record and recap of: Daily presences of the Client, Daily inventory, <br />
Cash and market movement in proper forms, <br />
Recap of extra sales to the Client.<br />
16. Fill the Local staff Time sheet and attendance register.</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">6 - 8 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">Hotel / Restaurants /Travel / Airlines</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Advanced/Higher Diploma</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Camp Management</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Camp Boss Activities</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Supervising</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Camp Operations</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Team Management</span>
												<span class="bdr dib p2px10px mr5px mt2px"> stocking </span>
												<span class="bdr dib p2px10px mr5px mt2px">stock checking</span>
												<span class="bdr dib p2px10px mr5px mt2px">Inventory 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">Contact Person</td>
						<td class="p5px">Dominic Savio</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">Shop 6/C, Green Lawns Building, Off L J Road, Opp. Al-Saudia Hotel, Near Paradise Cinema, Mahim(W), Mumbai, Maharashtra, India - 400016</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9930524413 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:cv.taexpo@gmail.com"> cv.taexpo@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="297667">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="784831"><input type="hidden" name="subject" value="Applied for Camp Manager">
					</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-saudi-arabia.htm" title="Jobs in Saudi Arabia">Saudi Arabia</a> <b class="alpha50 bn small">(8)</b></span>
												<span class="dib p5px10px c2px bdr mr7px mb7px "><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>
										</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">(6)</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">(2)</span><a href="jobs-in-hotel-restaurants-travel-airlines-fid.htm" title="Hotel / Restaurants /Travel / Airlines Jobs">Hotel / Restaurants /Travel / ...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Q...</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: 'VkZvR20yM2hVakFJditsWDBrdmkrQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:79:"Job openings for camp manager in saudi arabia | T. A. Expo & Placement Services";i:2;s:146:"Camp Manager Jobs,Camp Manager Jobs in ,Camp Manager Vacancy in ,Camp Manager jobs in Saudi Arabia,Hotel / Restaurants /Travel / Airlines jobs in ";i:3;s:361:"Apply for Camp Manager Jobs in  Saudi Arabia - Camp Manager Vacancy  in Hotel / Restaurants /Travel / Airlines field with 6 to 8 years Work Experience, Key Skills are Camp Management, Camp Boss Activities, Supervising, Camp Operations, Team Management, stocking ,stock checking,Inventory MAnagement, Hotel / Restaurants /Travel / Airlines jobs in   Saudi Arabia";i:4;s:2634:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Camp Manager",
		  "baseSalary": "",
		  "description": "1.Responsible for operational activities in the camp or rig under his supervision,
Ensuring the daily good management of the location.
2. Carry out the daily, weekly and monthly duties as laid out by the Company and below detailed
.
3. Fill and keep record of administrative forms in accordance with the Company rules.
4. Manage the team of expatriate’s staff working at the camp and increase his motivation.
5. Supervise and take part to the training of staff according to the rules of HSE, Food Hygiene and Safety, HACCP, etc.
6. Responsible for requests warehouse, stocking and stock checking in addition to cost control reporting according to the rules made by the Company, always ensuring a minimum stock quantity for each item.
7. Responsible for cold and dry stores in the location He is the only person
Entitled to keep the keys and will be responsible for any eventual shortages.
8. The Camp Boss must be clean, tidy and shall follow diligently the disciplinary 
rules laid out in his contract.
9. Monthly Inventory with reported expiry date of all products
.
10. Inventory and record of sales of mini - market or bonded store (in case
it exists), filling the relative form.
11. P.O.B. duly signed by the Client or his Representative.
12. Records of extra services and sales rendered to Clients, duly signed by the Client, reporting the number of budgeted Projects or refer to object or person
, in order to be invoiced
.
13. Keep a record and recap of the weekly menu agreed with the Client, duly signed by the Client and Camp Boss and sent to the main office, with all documents.
14. Fill a record with the weekly consumption divided by family.
.
15. Keep a record and recap of: Daily presences of the Client, Daily inventory, 
Cash and market movement in proper forms, 
Recap of extra sales to the Client.
16. Fill the Local staff Time sheet and attendance register.",
		  "educationRequirements": "Advanced/Higher Diploma",
		  "experienceRequirements": "6 - 8 Years",
		  "industry": "Hotel / Restaurants /Travel / Airlines",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "",
		      "addressRegion": ""
		    }
		  },
		 "qualifications": "Advanced/Higher Diploma",
		     "skills": "Camp Management, Camp Boss Activities, Supervising, Camp Operations, Team Management, stocking ,stock checking,Inventory MAnagement"
		  }
		</script>
		";i:5;N;}