a:6:{i:0;s:12545:"				<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 Technical Architect in Ahmedabad</h1></div>
					<p class="breadcrumb ar uu small"> <a href="https://www.aarnaconsultancy.com/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.aarnaconsultancy.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for Technical Architect in Ahmedabad</p>
									<div class="pt10px">
				<div class="dt w100">
				<div class="dtc">
				<div class="xxxlarge fw6 dif lh13em">Technical Architect</div>
									<p class="mt7px fw6">Ahmedabad</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.aarnaconsultancy.com/job-openings-for-technical-architect-ahmedabad-946768.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.aarnaconsultancy.com/job-openings-for-technical-architect-ahmedabad-946768.htm" class="instagram" title="Instagram"><i class="fa fa-instagram"></i></a></li>
				<li><a target="_blank" href="https://wa.me/?text=https://www.aarnaconsultancy.com/job-openings-for-technical-architect-ahmedabad-946768.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=Technical Architect&url=https://www.aarnaconsultancy.com/job-openings-for-technical-architect-ahmedabad-946768.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.aarnaconsultancy.com/job-openings-for-technical-architect-ahmedabad-946768.htm&title=Technical Architect" 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.aarnaconsultancy.com/job-openings-for-technical-architect-ahmedabad-946768.htm&description=Technical Architect" 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">
									
					<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="333131">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="946768"><input type="hidden" name="subject" value="Applied for Technical Architect">
					</form>
			
									</div></div>
				</div>
								<div class="fo mt10px">
				<a href="https://www.aarnaconsultancy.com/vacancy_946768.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">As an Architect, you will :<br />- Work with various stakeholders and identify the scope of the project, create a timeline and come up with the approach and design for the project.<br />- Work with company specific tools, technologies and processes to ensure the highest quality product platform<br />- Provide technical leadership, oversee and work closely with the development teams constantly reviewing the code and maintain quality of the design.<br />- Continuously evaluate the existing software to identify areas of improvement and ensure architectural integrity as additional features are added<br />- Document the architectural blueprint and end to end design through flowcharts and diagrams and Hands on with Coding<br />- Coach and mentor the development teams to improve the overall expertise and skills of the team.<br />- Evaluate and identify software solutions based on the requirements and the constraints of the project.<br />- Take care of the development of critical components and POCs for new technologies to be used<br />- Be the technical expert in the entire stack of technologies used by the Engineering team.<br />- Deliver high quality deliverables individually/as a team adhering to industry best practices.<br />- Troubleshoot any errors or issues that arise in the application/infrastructure components quickly and efficiently.<br />You will be expected to have :<br />- A demonstrable track record as a Software Developer moving up to Lead and Deliver as an Architect in the delivery of high quality, complex projects.<br />- Hands on development experience of more than 9 years with expertise in multiple programming languages, frameworks and technical stacks.<br />- Experience in Web development with expertise in designing and developing various architectural designs.<br />- Outstanding communication and presentation abilities<br />- A technical mind set with great attention to detail<br />- Start Up / Hustle Experience is an advantage<br />- In depth working knowledge of Enterprise design patterns.</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">8 - 14 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 10  Lac  To  15  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">IT Software - Application Programming / Maintenance</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Other Bachelor Degree</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
												<span class="bdr dib p2px10px mr5px mt2px">Java Architecture</span>
														<span class="bdr dib p2px10px mr5px mt2px">J2Ee Architecture</span>
														<span class="bdr dib p2px10px mr5px mt2px">Technical Architect</span>
														<span class="bdr dib p2px10px mr5px mt2px">Technical Architecture</span>
														<span class="bdr dib p2px10px mr5px mt2px">Java Development</span>
														<span class="bdr dib p2px10px mr5px mt2px">Mysql</span>
														<span class="bdr dib p2px10px mr5px mt2px">Walk in</span>
												</td>
					</tr>
									
				</table>
				</div>
				<br>
				<div>
				<!--p class="large fw6">About Company</p-->
				<div>
				
								
				<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="333131">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="946768"><input type="hidden" name="subject" value="Applied for Technical Architect">
					</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="https://www.aarnaconsultancy.com/jobs-in-ahmedabad.htm" title="Jobs in Ahmedabad">Ahmedabad</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="https://www.aarnaconsultancy.com/jobs-in-gurgaon.htm" title="Jobs in Gurgaon">Gurgaon</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="https://www.aarnaconsultancy.com/jobs-in-mahesana.htm" title="Jobs in Mehsana">Mehsana</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="https://www.aarnaconsultancy.com/jobs-in-rajkot.htm" title="Jobs in Rajkot">Rajkot</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="https://www.aarnaconsultancy.com/jobs-in-surat.htm" title="Jobs in Surat">Surat</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">(5)</span><a href="https://www.aarnaconsultancy.com/jobs-in-application-programming-fid.htm" title="IT Software - Application Programming / Maintenance Jobs">IT Software - Application Prog...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="https://www.aarnaconsultancy.com/jobs-in-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="https://www.aarnaconsultancy.com/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.aarnaconsultancy.com/jobs-in-mobile-software-application-fid.htm" title="IT Software - Mobile Technologies Jobs">IT Software - Mobile Technolog...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="https://www.aarnaconsultancy.com/jobs-in-system-programming-fid.htm" title="IT Software - System Programming Jobs">IT Software - System Programmi...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="https://www.aarnaconsultancy.com/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>
				
	<?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:69:"Job openings for Technical Architect in Ahmedabad | Aarna Consultancy";i:2;s:207:"Technical Architect Jobs,Technical Architect Jobs in Ahmedabad,Technical Architect Vacancy in Ahmedabad,Technical Architect jobs in India,IT Software - Application Programming / Maintenance jobs in Ahmedabad";i:3;s:384:"Apply for Technical Architect Jobs in Ahmedabad India - Technical Architect Vacancy  in IT Software - Application Programming / Maintenance field with 8 to 14 years Work Experience, Key Skills are Java Architecture,J2Ee Architecture,Technical Architect,Technical Architecture,Java Development,Mysql,Walk in, IT Software - Application Programming / Maintenance jobs in Ahmedabad  India";i:4;s:1971:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Technical Architect",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "Aarna Consultancy",
	        "value":  "946768"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "Aarna Consultancy",
	      "description": "AARNA CONSULTANCY is an India based HR consultancy firm. We are engaged in providing comprehensive job consultancy. Through our unique Franchisee and widespread network of agents across multiple locations, we cater to the needs of clients across India. We create a platform for both hiring companies and job seekers for the fulfillment of their requirements efficiently. Further, the success of our company can be defined by the placement of over 1000 candidates in just 7 years of our establishment.",
	      "telephone" : "9909990337",
	      "email" : "aarnaconsultancy2011@gmail.com"  
	       },
		  "url": "https://www.aarnaconsultancy.com/job-openings-for-technical-architect-ahmedabad-946768.htm",
          "datePosted": "2024-03-13",
          
		  "baseSalary": " 10  Lac  To  15  Lac ",
		  "description": "As an Architect, you will :rnrn- Work with various stakeholders and identify the scope of the project, create a timeline and come up with the approach and design for the project.rnrn- Work with compan",
		  "educationRequirements": "Other Bachelor Degree",
		  "experienceRequirements": "8 - 14 Years",
		  "industry": "IT Software - Application Programming / Maintenance",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Gujarat",
		      "addressRegion": "Ahmedabad"
		    }
		  },
		 "qualifications": "Other Bachelor Degree",
		     "skills": "Java Architecture,J2Ee Architecture,Technical Architect,Technical Architecture,Java Development,Mysql,Walk in"
		  }
		</script>
		";i:5;N;}