a:6:{i:0;s:10215:"				<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 Accounts Officer in Hyderabad</h1></div>
					<p class="breadcrumb ar uu small"> <a href="https://www.eltechengineering.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.eltechengineering.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for Accounts Officer in Hyderabad</p>
									<div class="pt10px">
				<div class="dt w100">
				<div class="dtc">
				<div class="xxxlarge fw6 dif lh13em">Accounts Officer</div>
									<p class="mt7px fw6">Hyderabad</p>
								
				</div>
				<div class="dtc w200px ar">
				<div class="ShareDropdown dib">	
				<div class="copyLinkPopup">Link Copied</div>		  
				<span class="data"><i class="fa fa-share-alt xxlarge vam"></i></span>
				<ul class="shareList data bdr0">
				<li><a target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=https://www.eltechengineering.in/job-openings-for-accounts-officer-hyderabad-960281.htm" class="facebook" title="Facebook"><i class="fa fa-facebook-official"></i></a></li> 
				<li><a target="_blank" href="https://www.instagram.com/?url=https://www.eltechengineering.in/job-openings-for-accounts-officer-hyderabad-960281.htm" class="instagram" title="Instagram"><i class="fa fa-instagram"></i></a></li>
				<li><a target="_blank" href="https://wa.me/?text=https://www.eltechengineering.in/job-openings-for-accounts-officer-hyderabad-960281.htm" class="whatsapp" title="Whatsapp"><i class="fa fa fa-whatsapp"></i></a></li>  
				<li><a target="_blank" href="https://X.com/intent/tweet?text=Accounts Officer&url=https://www.eltechengineering.in/job-openings-for-accounts-officer-hyderabad-960281.htm" class="twitter" title="Twitter"><img src="https://catalog.wlimg.com/mobile/social-networking-img/1002.svg" alt="Twitter" style="width:22px;height:22px;vertical-align:middle;margin-right:6px;"></a></li> 
				<li><a target="_blank" href="https://www.linkedin.com/shareArticle?mini=true&url=https://www.eltechengineering.in/job-openings-for-accounts-officer-hyderabad-960281.htm&title=Accounts Officer" class="linkedin" title="Linkedin"><i class="fa fa-linkedin-square"></i></a></li>
				<li><a target="_blank" href="https://pinterest.com/pin/create/button/?url=https://www.eltechengineering.in/job-openings-for-accounts-officer-hyderabad-960281.htm&description=Accounts Officer" class="pinterest" title="Pinterest"><i class="fa fa-pinterest-square"></i></a></li>	
				<li><a href="javascript:;" title="Copy Link" class="copy" onclick="copyURL()"><i class="fa fa-clone"></i></a></li>
				</ul>
				</div>
				<script>
				$(document).ready(function(){
				$('.ShareDropdown span').click(function(){
				 $('.ShareDropdown').toggleClass("active");
				}); 
				});
				</script>
				<script>
				  function copyURL() {
				    const url = window.location.href;
					const textarea = document.createElement("textarea");
					textarea.value = url;
					textarea.style.position = "fixed";
					document.body.appendChild(textarea);
					textarea.focus();
					textarea.select();
			
					try {
					  document.execCommand("copy");
					//  alert("URL copied (fallback)!");
					  $(".copyLinkPopup").show();		 
			          setTimeout(function(){$(".copyLinkPopup").hide();}, 2000);
				      $('.ShareDropdown').removeClass("active");
					  
					} catch (err) {
					  console.error("Fallback copy failed:", err);
					}
			
					document.body.removeChild(textarea);
				  }
				</script>
				<div class="mt7px ml7px dib">
								</div></div>
				</div>
								<div class="fo mt10px">
				<a href="https://www.eltechengineering.in/vacancy_960281.rss" target="_blank" class="p5px15px dib c3px" style="background:#f8991b;color:#ffffff;"><i class="fa fa-feed"></i> RSS Feed </a>
				</div>
				<br>
				<p class="aj mt7px lh18em">Job Description & Skill Set:<br />•	Sound knowledge in procedures involved in statutory compliances relating to taxations (TDS, VAT, CST, GST, Service Tax).<br />•	Skilled at preparing final account and other financial statements.<br />•	Coordinating with vendors, Bankers etc for smoother operation.<br />•	Preparing financial statements like cash / bank trail, cash flow & funds flow statements and final accounts.<br />•	Computation and preparation of Income Tax Returns of Individuals, Firms and Companies.<br />•	Preparation and E-filing of TDS Statements.<br />•	Computations and filing of service Tax.<br />•	Working knowledge on account packages Tally ERP 9.0 & ERP Focus 6.0.<br />•	Verification of Day to Day verification vendor payments.<br />•	Generating Reports, updating Cash book.<br />•	Preparation of Bank Reconciliation Statements.<br />•	Petty Cash Management.<br />•	Providing information & Support to internal and Statutory Auditors.<br />•	Providing Vendor accounts reconciliation as needed.<br />•	Monitoring of day to day transactions and verification of vouchers.<br />•	Maintain TDS Details of Sub Contractors, Maintain TDS Details.<br />•	Preparation of Bank Reconciliation statements.<br />•	Preparation of Liability statements of Contractors & Suppliers etc.<br />•	Maintaining daily stock dispatch record in MS - Excel.<br />•	Monitor and review accounting and related system reports for accuracy and completeness.<br />•	Interacting with statutory auditors regarding audit finalization of accounts.<br />•	Reconciliation of party accounts and scrutiny of General ledger, preparation of monthly Financials.<br />•	Preparation of Cash Flow Statement.<br />•	Maintaining Daily Financial Reports of Various project sites.<br />•	Prepare Cr. Voucher & JV. Also<br />•	Ledger wise reconciliation and Follow Up on Outstanding debts.<br />•	Validate daily reports from various work sites.<br />•	Monitoring preparation of statements including Trial Balance, P & L A/c, Client Outstanding, Account Receivable / Payable, General Ledger, Receivable Management, <br />•	Balance Sheets on monthly as well as annual basis.<br />•	Acc</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">1 - 2 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 1  Lac  25 Thousand  To  2  Lac  25 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">Accounting / Auditing / Taxation</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Diploma, Other Bachelor Degree</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
												<span class="bdr dib p2px10px mr5px mt2px">Accounts Manager</span>
														<span class="bdr dib p2px10px mr5px mt2px">Accounting</span>
														<span class="bdr dib p2px10px mr5px mt2px">Accounts Officer</span>
														<span class="bdr dib p2px10px mr5px mt2px">Finance Manager</span>
												</td>
					</tr>
									
				</table>
				</div>
				<br>
				<div>
				<!--p class="large fw6">About Company</p-->
				<div>
				
								
				<br />
				
								</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="https://www.eltechengineering.in/jobs-in-hyderabad.htm" title="Jobs in Hyderabad">Hyderabad</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="https://www.eltechengineering.in/jobs-in-medchal.htm" title="Jobs in Medchal">Medchal</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">(2)</span><a href="https://www.eltechengineering.in/jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxati...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="https://www.eltechengineering.in/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">(1)</span><a href="https://www.eltechengineering.in/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>
				
	<?php
	$source_type="";
	if (!empty($_REQUEST["utm_campaign"]) && ($_REQUEST["utm_campaign"]=="google_jobs_apply" || $_REQUEST["utm_campaign"]=="JobApplyPI")) {
		$source_type=$_REQUEST["utm_campaign"];
	}
	?>
	";i:1;s:71:"Job openings for Accounts Officer in Hyderabad | Integrated Engineering";i:2;s:176:"Accounts Officer Jobs,Accounts Officer Jobs in Hyderabad,Accounts Officer Vacancy in Hyderabad,Accounts Officer jobs in India,Accounting / Auditing / Taxation jobs in Hyderabad";i:3;s:290:"Apply for Accounts Officer Jobs in Hyderabad India - Accounts Officer Vacancy  in Accounting / Auditing / Taxation field with 1 to 2 years Work Experience, Key Skills are Accounts Manager,Accounting,Accounts Officer,Finance Manager, Accounting / Auditing / Taxation jobs in Hyderabad  India";i:4;s:1709:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Accounts Officer",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "Integrated Engineering",
	        "value":  "960281"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "Integrated Engineering",
	      "description": "We are looking for Young and Dynamic Electrical Engineers ( Freshers or Experience up to 1 Year).
For Doing technical Promotion of Product - 
HT< Soft Starters , VFD, HT< Switchgear .
Need strong Electrical Background .
Committed to Travel and Meeting customers at their locations.",
	      "telephone" : "+91-8499080006",
	      "email" : ""  
	       },
		  "url": "https://www.eltechengineering.in/job-openings-for-accounts-officer-hyderabad-960281.htm",
          "datePosted": "2023-08-28",
          
		  "baseSalary": " 1  Lac  25 Thousand  To  2  Lac  25 Thousand ",
		  "description": "Job Description & Skill Set:rn•	Sound knowledge in procedures involved in statutory compliances relating to taxations (TDS, VAT, CST, GST, Service Tax).rn•	Skilled at preparing final account and o",
		  "educationRequirements": "Diploma, Other Bachelor Degree",
		  "experienceRequirements": "1 - 2 Years",
		  "industry": "Accounting / Auditing / Taxation",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Telangana",
		      "addressRegion": "Hyderabad"
		    }
		  },
		 "qualifications": "Diploma, Other Bachelor Degree",
		     "skills": "Accounts Manager,Accounting,Accounts Officer,Finance Manager"
		  }
		</script>
		";i:5;N;}