a:6:{i:0;s:8732:"				<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 flight attendant in kolkata</h1></div>
					<p class="breadcrumb ar uu small"> <a href="https://www.flynation.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.flynation.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for flight attendant in kolkata</p>
									<div class="pt10px">
				<div class="dt w100">
				<div class="dtc">
				<div class="xxxlarge fw6 dif">Flight Attendant</div>
									<p class="mt7px fw6">Kolkata</p>
								
				</div>
				<div class="dtc w125px"><div class="mt7px">
									
					<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="989493">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="973521"><input type="hidden" name="subject" value="Applied for Flight Attendant">
					</form>
			
									</div></div>
				</div>
								
				<br>
				<p class="aj mt7px">To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. Reasonable accommodation will be made to enable individuals with disabilities to perform the essential functions.<br />
<br />
Performs all regulatory and assigned cabin duties with constant attention to guests while providing a safe and comfortable onboard experience.<br />
Maintains thorough knowledge of all emergency procedures and the use of all emergency equipment on board the aircraft; operates all emergency exits and aircraft equipment using all the necessary movements and force up to and including 70 pounds.<br />
Provides food and beverages to passengers, which requires pushing and pulling moveable carts weighing in excess of 250 pounds.<br />
Assists passengers in stowing carry-on baggage weighing up to and including 35 pounds.<br />
Maintains a neat and orderly cabin environment.<br />
Contributes to a reliable and on-time operation by working with other crewmembers to meet all report times, departure times, and minimum turn times.<br />
Performs inflight sales and promotional duties as assigned.<br />
Assists other Customer Service staff as needed with passenger handling or other duties.<br />
Maintains reliable and prompt attendance according to Company policies and procedures.<br />
Presents a professional image, both in conduct and in appearance, including adherence to the Company uniform dress code.<br />
Complies with associate Rules of Conduct as outlined in all applicable manuals.<br />
Maintains currency of Inflight guides and manuals.<br />
Fosters the Company’s core values and culture throughout the work environment.<br />
Performs additional duties as assigned or required.<br />
<br />
EDUCATION and/or EXPERIENCE<br />
<br />
High school diploma or GED, with at least two years of customer service experience.<br />
Must be 21 years of age by the date of the first interview.<br />
<br />
Communication must be in fluent in English.<br />
Age 20-27 (both male and female)</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">0 - 2 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 1  Lac  50 Thousand  To  3  Lac  25 Thousand  P.A.</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">Higher Secondary, Diploma, Professional Degree, B.A, B.Com, Post Graduate Diploma</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Good Communication skill</span>
												<span class="bdr dib p2px10px mr5px mt2px">Flight Attendant</span>
												<span class="bdr dib p2px10px mr5px mt2px">Cabin Crew</span>
												<span class="bdr dib p2px10px mr5px mt2px">Airline Executive</span>
												<span class="bdr dib p2px10px mr5px mt2px">Air Ticketing</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">bandana</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">park street</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">8583894230 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:flynation2786@gmail.com"> flynation2786@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="989493">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="973521"><input type="hidden" name="subject" value="Applied for Flight Attendant">
					</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">(13)</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">(9)</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">(2)</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-health-care-pharmaceuticals-medical-fid.htm" title="Health Care / Pharmaceuticals / Medical Jobs">Health Care / Pharmaceuticals ...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-fresh-graduate-fid.htm" title="Fresher / Trainee Jobs">Fresher / Trainee</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: 'dXVjK3huQ0RnOEQ1QkF5RkZHSU5vUT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:57:"Job openings for flight attendant in kolkata | Fly Nation";i:2;s:176:"Flight Attendant Jobs,Flight Attendant Jobs in Kolkata,Flight Attendant Vacancy in Kolkata,Flight Attendant jobs in India,Hotel / Restaurants /Travel / Airlines jobs in Kolkata";i:3;s:322:"Apply for Flight Attendant Jobs in Kolkata India - Flight Attendant Vacancy  in Hotel / Restaurants /Travel / Airlines field with 0 to 2 years Work Experience, Key Skills are Good Communication skill,Flight Attendant,Cabin Crew,Airline Executive,Air Ticketing, Hotel / Restaurants /Travel / Airlines jobs in Kolkata  India";i:4;s:3253:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Flight Attendant",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "",
	        "value":  "973521"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "",
	      "description": "",
	      "telephone" : "8583894230",
	      "email" : "flynation2786@gmail.com"  
	       },
		  "url": "https://www.flynation.in/job-openings-for-flight-attendant-kolkata-973521.htm",
          "datePosted": "2021-05-13",
          
		  "baseSalary": " 1  Lac  50 Thousand  To  3  Lac  25 Thousand ",
		  "description": "To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. Reasonable accommodation will be made to enable individuals with disabilities to perform the essential functions.

Performs all regulatory and assigned cabin duties with constant attention to guests while providing a safe and comfortable onboard experience.
Maintains thorough knowledge of all emergency procedures and the use of all emergency equipment on board the aircraft; operates all emergency exits and aircraft equipment using all the necessary movements and force up to and including 70 pounds.
Provides food and beverages to passengers, which requires pushing and pulling moveable carts weighing in excess of 250 pounds.
Assists passengers in stowing carry-on baggage weighing up to and including 35 pounds.
Maintains a neat and orderly cabin environment.
Contributes to a reliable and on-time operation by working with other crewmembers to meet all report times, departure times, and minimum turn times.
Performs inflight sales and promotional duties as assigned.
Assists other Customer Service staff as needed with passenger handling or other duties.
Maintains reliable and prompt attendance according to Company policies and procedures.
Presents a professional image, both in conduct and in appearance, including adherence to the Company uniform dress code.
Complies with associate Rules of Conduct as outlined in all applicable manuals.
Maintains currency of Inflight guides and manuals.
Fosters the Company’s core values and culture throughout the work environment.
Performs additional duties as assigned or required.

EDUCATION and/or EXPERIENCE

High school diploma or GED, with at least two years of customer service experience.
Must be 21 years of age by the date of the first interview.

Communication must be in fluent in English.
Age 20-27 (both male and female)",
		  "educationRequirements": "Higher Secondary, Diploma, Professional Degree, B.A, B.Com, Post Graduate Diploma",
		  "experienceRequirements": "0 - 2 Years",
		  "industry": "Hotel / Restaurants /Travel / Airlines",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "West Bengal",
		      "addressRegion": "Kolkata"
		    }
		  },
		 "qualifications": "Higher Secondary, Diploma, Professional Degree, B.A, B.Com, Post Graduate Diploma",
		     "skills": "Good Communication skill,Flight Attendant,Cabin Crew,Airline Executive,Air Ticketing"
		  }
		</script>
		";i:5;N;}