a:6:{i:0;s:8371:"				<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="http://www.eltechengineering.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://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">Accounts Officer</div>
									<p class="mt7px fw6">Hyderabad</p>
								
				</div>
				<div class="dtc w125px"><div class="mt7px">
								</div></div>
				</div>
								<br />
				<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-53d0b0627cb3c661"></script>
				<div class="fo">
				<div class="addthis_sharing_toolbox dib vam mr10px"></div>
				<a href="http://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">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 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">Eltech Engineering</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">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.
Self Motivation to Create Day to Day Work.
Hindi Speaking is Mandatory .
Quick learner.
Location Any where India .</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">Siva Reddy</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">J316, Midc Bhosari City</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">+91-8499080006 </td>
						</tr>
										
					</table>
									
				<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="jobs-in-hyderabad.htm" title="Jobs in Hyderabad">Hyderabad</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="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="jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxati...</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: 'cHlCY2hWb3VjLzdpL1VhMzhoSEZyQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:67:"Job openings for accounts officer in hyderabad | Eltech 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:293:"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:3720:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Accounts Officer",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "Eltech Engineering",
	        "value":  "960281"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "Eltech 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.
Self Motivation to Create Day to Day Work.
Hindi Speaking is Mandatory .
Quick learner.
Location Any where India .",
	      "telephone" : "+91-8499080006",
	      "email" : ""  
	       },
		  "url": "http://www.eltechengineering.in/job-openings-for-accounts-officer-hyderabad-960281.htm",
          "datePosted": "2022-01-27",
          
		  "baseSalary": " 1  Lac  25 Thousand  To  2  Lac  25 Thousand ",
		  "description": "Job Description & Skill Set:
•	Sound knowledge in procedures involved in statutory compliances relating to taxations (TDS, VAT, CST, GST, Service Tax).
•	Skilled at preparing final account and other financial statements.
•	Coordinating with vendors, Bankers etc for smoother operation.
•	Preparing financial statements like cash / bank trail, cash flow & funds flow statements and final accounts.
•	Computation and preparation of Income Tax Returns of Individuals, Firms and Companies.
•	Preparation and E-filing of TDS Statements.
•	Computations and filing of service Tax.
•	Working knowledge on account packages Tally ERP 9.0 & ERP Focus 6.0.
•	Verification of Day to Day verification vendor payments.
•	Generating Reports, updating Cash book.
•	Preparation of Bank Reconciliation Statements.
•	Petty Cash Management.
•	Providing information & Support to internal and Statutory Auditors.
•	Providing Vendor accounts reconciliation as needed.
•	Monitoring of day to day transactions and verification of vouchers.
•	Maintain TDS Details of Sub Contractors, Maintain TDS Details.
•	Preparation of Bank Reconciliation statements.
•	Preparation of Liability statements of Contractors & Suppliers etc.
•	Maintaining daily stock dispatch record in MS - Excel.
•	Monitor and review accounting and related system reports for accuracy and completeness.
•	Interacting with statutory auditors regarding audit finalization of accounts.
•	Reconciliation of party accounts and scrutiny of General ledger, preparation of monthly Financials.
•	Preparation of Cash Flow Statement.
•	Maintaining Daily Financial Reports of Various project sites.
•	Prepare Cr. Voucher & JV. Also
•	Ledger wise reconciliation and Follow Up on Outstanding debts.
•	Validate daily reports from various work sites.
•	Monitoring preparation of statements including Trial Balance, P & L A/c, Client Outstanding, Account Receivable / Payable, General Ledger, Receivable Management, 
•	Balance Sheets on monthly as well as annual basis.
•	Acc",
		  "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;}