a:6:{i:0;s:12076:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for food beverage controller in kolkata</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.reachpremier.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.reachpremier.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for food beverage controller in kolkata</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">Food Beverage Controller (only Male Candidates From F&b Industry Need To Apply For This Post)</div>
									<p class="mt7px fw6">Kolkata</p>
									
				<br>
				<p class="aj mt7px">Job Specification<br />
good Verbal & Written Communication Skills<br />
good Analytics and Reporting Skills<br />
experience with Accounting System, Pos System, Cost and Inventory System<br />
ability to Multitask, Work in a Fast Paced Environment<br />
has High Level Attention to Detail<br />
ability to Work Independently and to Partner with Others to Promote An Environment of Team Work<br />
b.com in Finance and Accounting or Similar Major <br />
preferably Male Candidate<br />
location- H.o-kolkata<br />
<br />
job Description<br />
control the Ordering, Purchasing and Issuing of Food and Beverage ( Including Liquor )goods and Effectively Control the F&b Cost<br />
primary Responsibility for Calculating Costs of Food and Beverage  ( Including Liquor ) Items and also Responsible for Planning of the F&b Controlling and Primary Aspects to Ensure that the Costs are Within Budget<br />
responsible to Record Information and Produce Central Reports Periodically to Help Maintain a Suitable Inventory of Food & Beverage Items<br />
control the F&b Outlets in Terms of Wastage, Pilferage and Efficiency<br />
prepare Variance Analysis for Food and Beverage  ( Including Liquor )  and Communicating with Relevant Parties<br />
check, Verify and Approve Voids, Discounts, Happy House Discounts, Complimentary Sales, all Staff Meal and Staff Discounts, all Package Meals in Pos Systems<br />
responsible in Linking the Articles and Recipes in Material Control<br />
check the Daily F&b Report for Accuracy of Covers and Average per Paxs<br />
responsible for Daily and Monthly F&b Reports in Relations to Cost of Sales and Distribute the Same to the Management<br />
participate in Stock Taking At the Restaurants<br />
responsible to Maintain the Menu Pricing, Consumption and Pos System</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">10 - 12 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 10  Lac  To  12  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Hotel / Travel / Airlines</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Other Bachelor Degree, BHM</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Food Beverage</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 vat">Company Name</td>
						<td class="p5px vat"><p class="dif b">Client Of www.reachpremier.com</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">Our Client is in having retail Chain of Restaurant</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:reachpremierindia@gmail.com"> reachpremierindia@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="302424">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="839317"><input type="hidden" name="subject" value="Applied for Food Beverage Controller (only Male Candidates from F&b Industry Need to Apply for this Post)">
					</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-kolkata.htm" title="Jobs in Kolkata">Kolkata</a> <b class="alpha50 bn small">(39)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-surat.htm" title="Jobs in Surat">Surat</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-lucknow.htm" title="Jobs in Lucknow">Lucknow</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-jorhat.htm" title="Jobs in Jorhat">Jorhat</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-allahabad.htm" title="Jobs in Allahabad">Allahabad</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-guwahati.htm" title="Jobs in Guwahati">Guwahati</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-bhubaneswar.htm" title="Jobs in Bhubaneswar">Bhubaneswar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-satna.htm" title="Jobs in Satna">Satna</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-gandhidham.htm" title="Jobs in Gandhidham">Gandhidham</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-east-sikkim.htm" title="Jobs in East Sikkim">East Sikkim</a> <b class="alpha50 bn small">(1)</b></span>
										<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">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-bangalore.htm" title="Jobs in Bangalore">Bangalore</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></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">(21)</span><a href="jobs-in-sales-marketing-fid.htm" title="Sales/Marketing Jobs">Sales/Marketing</a></p>
										<p class="mb5px "><span class="fr">(9)</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">(7)</span><a href="jobs-in-front-office-data-entry-fid.htm" title="Front Office / Executive Assistant / Data Entry Jobs">Front Office / Executive Assis...</a></p>
										<p class="mb5px "><span class="fr">(6)</span><a href="jobs-in-human-resources-fid.htm" title="HR / Recruitment / Administration / IR Jobs">HR / Recruitment / Administrat...</a></p>
										<p class="mb5px "><span class="fr">(4)</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">(3)</span><a href="jobs-in-property-construction-fid.htm" title="Real Estate / Construction Jobs">Real Estate / Construction</a></p>
										<p class="mb5px "><span class="fr">(3)</span><a href="jobs-in-engineering-technical-rd-fid.htm" title="Engineering / Technical / R&D Jobs">Engineering / Technical / R&D</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-erp-crm-edp-software-fid.htm" title="IT Software- ERP / CRM / EDP / MIS Jobs">IT Software- ERP / CRM / EDP /...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-legal-services-fid.htm" title="Legal / Law Services / Judiciary Jobs">Legal / Law Services / Judicia...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-financial-services-fid.htm" title="Finance / Stock Market Jobs">Finance / Stock Market</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-purchase-supply-chain-fid.htm" title="Purchase / Supply Chain Jobs">Purchase / Supply Chain</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-fresh-graduate-fid.htm" title="Fresher / Trainee Jobs">Fresher / Trainee</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-advertisement-marketing-fid.htm" title="Marketing / Advertising / PR / Media Planning Jobs">Marketing / Advertising / PR /...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-hotel-travel-fid.htm" title="Hotel / Travel / Airlines Jobs">Hotel / Travel / Airlines</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-call-center-medical-transcription-fid.htm" title="ITES / BPO / KPO / LPO / Customer Service / Operations Jobs">ITES / BPO / KPO / LPO / Custo...</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: 'WFRCc3BvZFVEMHFiRzBBNitYdWxFdz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:85:"Job openings for food beverage controller in kolkata | Premier Management Consultants";i:2;s:471:"Food Beverage Controller (only Male Candidates from F&b Industry Need to Apply for this Post) Jobs,Food Beverage Controller (only Male Candidates from F&b Industry Need to Apply for this Post) Jobs in Kolkata,Food Beverage Controller (only Male Candidates from F&b Industry Need to Apply for this Post) Vacancy in Kolkata,Food Beverage Controller (only Male Candidates from F&b Industry Need to Apply for this Post) jobs in India,Hotel / Travel / Airlines jobs in Kolkata";i:3;s:381:"Apply for Food Beverage Controller (only Male Candidates from F&b Industry Need to Apply for this Post) Jobs in Kolkata India - Food Beverage Controller (only Male Candidates from F&b Industry Need to Apply for this Post) Vacancy  in Hotel / Travel / Airlines field with 10 to 12 years Work Experience, Key Skills are Food Beverage, Hotel / Travel / Airlines jobs in Kolkata  India";i:4;s:2414:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Food Beverage Controller (only Male Candidates from F&b Industry Need to Apply for this Post)",
		  "baseSalary": " 10  Lac  To  12  Lac ",
		  "description": "Job Specification
good Verbal & Written Communication Skills
good Analytics and Reporting Skills
experience with Accounting System, Pos System, Cost and Inventory System
ability to Multitask, Work in a Fast Paced Environment
has High Level Attention to Detail
ability to Work Independently and to Partner with Others to Promote An Environment of Team Work
b.com in Finance and Accounting or Similar Major 
preferably Male Candidate
location- H.o-kolkata

job Description
control the Ordering, Purchasing and Issuing of Food and Beverage ( Including Liquor )goods and Effectively Control the F&b Cost
primary Responsibility for Calculating Costs of Food and Beverage  ( Including Liquor ) Items and also Responsible for Planning of the F&b Controlling and Primary Aspects to Ensure that the Costs are Within Budget
responsible to Record Information and Produce Central Reports Periodically to Help Maintain a Suitable Inventory of Food & Beverage Items
control the F&b Outlets in Terms of Wastage, Pilferage and Efficiency
prepare Variance Analysis for Food and Beverage  ( Including Liquor )  and Communicating with Relevant Parties
check, Verify and Approve Voids, Discounts, Happy House Discounts, Complimentary Sales, all Staff Meal and Staff Discounts, all Package Meals in Pos Systems
responsible in Linking the Articles and Recipes in Material Control
check the Daily F&b Report for Accuracy of Covers and Average per Paxs
responsible for Daily and Monthly F&b Reports in Relations to Cost of Sales and Distribute the Same to the Management
participate in Stock Taking At the Restaurants
responsible to Maintain the Menu Pricing, Consumption and Pos System",
		  "educationRequirements": "Other Bachelor Degree, BHM",
		  "experienceRequirements": "10 - 12 Years",
		  "industry": "Hotel / Travel / Airlines",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "West Bengal",
		      "addressRegion": "Kolkata"
		    }
		  },
		 "qualifications": "Other Bachelor Degree, BHM",
		     "skills": "Food Beverage"
		  }
		</script>
		";i:5;N;}