a:6:{i:0;s:8395:"				<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="https://www.taexpo.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://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;}