a:6:{i:0;s:8688:"				<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 camera attendant in beside jain mandirmumbai</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.adhochrsolutions.co.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.adhochrsolutions.co.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for camera attendant in beside jain mandirmumbai</p>
									<div class="pt10px">
				<div class="dt w100">
				<div class="dtc">
				<div class="xxxlarge fw6 dif">Camera Attendant For Production House</div>
									<p class="mt7px fw6">Mumbai, Beside Jain Mandir</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="356602">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="794750"><input type="hidden" name="subject" value="Applied for Camera Attendant for Production House">
					</form>
			
									</div></div>
				</div>
								
				<br>
				<p class="aj mt7px">Camera Attendants needed for Production House in Mumbai. Freshers are welcome. Only Camera Handling on the shoot is required as a Helper to the Cameraman. Salary of Rs. 8k to 14k plus food and accommodation can be provided. Immediate joining will be done.</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">Fresher</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 60 Thousand  To  2  Lac  25 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Media / Entertainment /  TV / Films / Production / Broadcasting</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Secondary School</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Camera Attendant</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Camera handling</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">Adhoc Entertainment Pvt Ltd</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">Adhoc HR & Marketing LLP is one of the acknowledged placement agencies that are actively involved in offering excellent services to the organizations and job seekers across Mumbai (Maharashtra, India). Ms. Bharati Fernandez as Director and Mr. Md. Iqbal Raza as Director laid the foundation stone of the company in the year 2013 and since then, we have been delivering excellent services to the job seekers and fraternities. Owing to our rich expertise, we have been able to serve several industries today. Our comprehensive range of services includes overseas placement services, domestic placement services, HR consultancy services, manpower recruitment services, and career consultancy services. So, wait no more and come directly to us for getting exceptional services for diverse placement as well as recruitment requirements.</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:bharati@adhochrsolutions.com"> bharati@adhochrsolutions.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="356602">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="794750"><input type="hidden" name="subject" value="Applied for Camera Attendant for Production House">
					</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-mumbai.htm" title="Jobs in Mumbai">Mumbai</a> <b class="alpha50 bn small">(37)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-ranchi.htm" title="Jobs in Ranchi">Ranchi</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>
									</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">(17)</span><a href="jobs-in-media-entertainment-tv-films-production-broadcasting-fid.htm" title="Media / Entertainment /  TV / Films / Production / Broadcasting Jobs">Media / Entertainment /  TV / ...</a></p>
										<p class="mb5px "><span class="fr">(6)</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-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">(2)</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-supply-chain-purchase-procurement-fid.htm" title="Supply Chain / Purchase / Procurement Jobs">Supply Chain / Purchase / Proc...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-self-employed-entrepreneur-consultants-freelancers-fid.htm" title="Self Employed / Entrepreneur / Consultants / Freelancers Jobs">Self Employed / Entrepreneur /...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-guards-security-services-fid.htm" title="Guards / Security Services Jobs">Guards / Security Services</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: 'QlhnTUJsdmVUa1I4Z1VzMnJFdVQrUT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:88:"Job openings for camera attendant in beside jain mandirmumbai | Adhoc HR & Marketing LLP";i:2;s:282:"Camera Attendant for Production House Jobs,Camera Attendant for Production House Jobs in Mumbai,Camera Attendant for Production House Vacancy in Mumbai,Camera Attendant for Production House jobs in India,Media / Entertainment /  TV / Films / Production / Broadcasting jobs in Mumbai";i:3;s:322:"Apply for Camera Attendant for Production House Jobs in Mumbai India - Camera Attendant for Production House Vacancy  in Media / Entertainment /  TV / Films / Production / Broadcasting , Key Skills are Camera Attendant, Camera handling, Media / Entertainment /  TV / Films / Production / Broadcasting jobs in Mumbai  India";i:4;s:2392:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Camera Attendant for Production House",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "Adhoc Entertainment Pvt Ltd",
	        "value":  "794750"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "Adhoc Entertainment Pvt Ltd",
	      "description": "Adhoc HR & Marketing LLP is one of the acknowledged placement agencies that are actively involved in offering excellent services to the organizations and job seekers across Mumbai (Maharashtra, India). Ms. Bharati Fernandez as Director and Mr. Md. Iqbal Raza as Director laid the foundation stone of the company in the year 2013 and since then, we have been delivering excellent services to the job seekers and fraternities. Owing to our rich expertise, we have been able to serve several industries today. Our comprehensive range of services includes overseas placement services, domestic placement services, HR consultancy services, manpower recruitment services, and career consultancy services. So, wait no more and come directly to us for getting exceptional services for diverse placement as well as recruitment requirements.",
	      "telephone" : "",
	      "email" : "bharati@adhochrsolutions.com"  
	       },
		  "url": "http://www.adhochrsolutions.co.in/job-openings-for-camera-attendant-beside-jain-mandirmumbai-794750.htm",
          "datePosted": "2021-07-28",
          
		  "baseSalary": " 60 Thousand  To  2  Lac  25 Thousand ",
		  "description": "Camera Attendants needed for Production House in Mumbai. Freshers are welcome. Only Camera Handling on the shoot is required as a Helper to the Cameraman. Salary of Rs. 8k to 14k plus food and accommodation can be provided. Immediate joining will be done.",
		  "educationRequirements": "Secondary School",
		  "experienceRequirements": "Fresher",
		  "industry": "Media / Entertainment /  TV / Films / Production / Broadcasting",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Maharashtra",
		      "addressRegion": "Mumbai, Beside Jain Mandir"
		    }
		  },
		 "qualifications": "Secondary School",
		     "skills": "Camera Attendant, Camera handling"
		  }
		</script>
		";i:5;N;}