a:6:{i:0;s:14611:"				<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 coe testing lead in bangalore</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.svsjobs.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.svsjobs.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for coe testing lead in bangalore</p>
									<div class="pt10px">
				<div class="xxxlarge fw6 dif">COE Testing Lead</div>
									<p class="mt7px fw6">Bangalore</p>
									
				<br>
				<p class="aj mt7px">Roles and responsibilities<br />
Ensure the “new” Testing teams (Both CoE and in the Feature Teams) meets their deadlines and delivers on the expectation<br />
Work with the CoE test Leads (BVT, Regression, Integration, NFRs) to ensure cohesion and removal of any obstacles or blockers<br />
Hold CoE test Leads and Feature team Testers accountable to meeting their testing obligations<br />
Report to the head of Testing & Deployment on the efficacy of the testing interventions<br />
Review Feature team testing compliance<br />
Produce and collate test cycle reports for each Feature team Scum master <br />
Provide consolidated test reporting to the Head of Testing and Deployment<br />
Assist Feature team QA engineers with testing risks and issues<br />
Maintain testing procedure <br />
Manage testing gamification and continually verify metrics applicability and quality<br />
Creating the TSR’s for the release sign off.<br />
Pre-sprint, consolidate of security dimensions and provide Telecom Domain Test COE with New service definitions and Pen test information<br />
Post sprint, confirm new service deployments<br />
<br />
Desired Skills and Experience<br />
Hands on experience on preparing E2E test strategy, business testing strategy for a complex program<br />
Proven Experience in assessing virtualization opportunities and showcase business value benefits<br />
hands on assessment of shift left testing and automation feasibility <br />
Strong practical experience leading an Agile or DevOps based Testing practice<br />
Strong practical test automation experience<br />
Excellent analysis skills<br />
Excellent stakeholder relationship management<br />
Excellent communication Skills<br />
Excellent management skills<br />
Excellent understanding of DevOps and Agile principles and paradigms<br />
Excellent Understanding of Measuring performance in an Agile and DevOps environment <br />
Can Demonstrate Patience while still driving performance<br />
Excellent Coach and Mentor<br />
Can Demonstrate being a quick learner<br />
Proven Systems thinking experience<br />
Experienced in resource forecasting & allocation, status reporting, risk & issue management</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">8 - 10 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 12  Lac  To  13  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">IT Software - QA / Testing / Documentation</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">Coe Testing Lead</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">K. Senthil</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">Plot no. 48, Parsuvanath Avenue, ALS Nagar, Madambakkam, Chennai</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">7977587717 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:info@svsjobs.in"> info@svsjobs.in </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="875341">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="903611"><input type="hidden" name="subject" value="Applied for COE Testing Lead">
					</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-chennai.htm" title="Jobs in Chennai">Chennai</a> <b class="alpha50 bn small">(59)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-bangalore.htm" title="Jobs in Bangalore">Bangalore</a> <b class="alpha50 bn small">(20)</b></span>
										<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">(4)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-madurai.htm" title="Jobs in Madurai">Madurai</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-navi-mumbai.htm" title="Jobs in Navi Mumbai">Navi Mumbai</a> <b class="alpha50 bn small">(3)</b></span>
										<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">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-pondicherry.htm" title="Jobs in Pondicherry">Pondicherry</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-vellore.htm" title="Jobs in Vellore">Vellore</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-pune.htm" title="Jobs in Pune">Pune</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-coimbatore.htm" title="Jobs in Coimbatore">Coimbatore</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-thiruvallur.htm" title="Jobs in Thiruvallur">Thiruvallur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-thiruvananthapuram.htm" title="Jobs in Thiruvananthapuram">Thiruvananthapuram</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-kochi.htm" title="Jobs in Kochi">Kochi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-kanchipuram.htm" title="Jobs in Kanchipuram">Kanchipuram</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-virudhunagar.htm" title="Jobs in Virudhunagar">Virudhunagar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></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">(18)</span><a href="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">(11)</span><a href="jobs-in-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</a></p>
										<p class="mb5px "><span class="fr">(10)</span><a href="jobs-in-it-analyst-software-testing-fid.htm" title="IT Software - QA / Testing / Documentation Jobs">IT Software - QA / Testing / D...</a></p>
										<p class="mb5px "><span class="fr">(8)</span><a href="jobs-in-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Q...</a></p>
										<p class="mb5px "><span class="fr">(7)</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">(5)</span><a href="jobs-in-network-administration-security-fid.htm" title="IT Software - Network Administration, Security Jobs">IT Software - Network Administ...</a></p>
										<p class="mb5px "><span class="fr">(5)</span><a href="jobs-in-ites-bpo-kpo-lpo-customer-service-fid.htm" title="ITES / BPO / KPO / LPO / Customer Service Jobs">ITES / BPO / KPO / LPO / Custo...</a></p>
										<p class="mb5px "><span class="fr">(4)</span><a href="jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxati...</a></p>
										<p class="mb5px "><span class="fr">(3)</span><a href="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">(3)</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">(3)</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 spanlist dn"><span class="fr">(3)</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 spanlist dn"><span class="fr">(2)</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 spanlist dn"><span class="fr">(2)</span><a href="jobs-in-education-teaching-training-counselling-fid.htm" title="Education / Teaching / Training / Counselling / Academic Jobs">Education / Teaching / Trainin...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(2)</span><a href="jobs-in-ecommerce-internet-marketing-fid.htm" title="IT Software - Ecommerce / Internet Technologies Jobs">IT Software - Ecommerce / Inte...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-engineering-design-rd-quality-fid.htm" title="Engineering/ Engineering Design / R&D / Quality Jobs">Engineering/ Engineering Desig...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-fresh-graduate-fid.htm" title="Fresher / Trainee Jobs">Fresher / Trainee</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</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 spanlist dn"><span class="fr">(1)</span><a href="jobs-in-legal-services-fid.htm" title="Legal / Law Services / Judiciary Jobs">Legal / Law Services / Judicia...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-computers-it-fid.htm" title="IT Hardware / Technical Support / Telecom Engineering Jobs">IT Hardware / Technical Suppor...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-hr-recruitment-administration-ir-training-development-operations-fid.htm" title="HR / Recruitment / Administration / IR / Training & Development / Operations Jobs">HR / Recruitment / Administrat...</a></p>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
									
				</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: 'L3NJWWlLQ2ZSdy9SYm9nMDdtY0lYUT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:76:"Job openings for coe testing lead in bangalore | SVS Job Consulting Services";i:2;s:186:"COE Testing Lead Jobs,COE Testing Lead Jobs in Bangalore,COE Testing Lead Vacancy in Bangalore,COE Testing Lead jobs in India,IT Software - QA / Testing / Documentation jobs in Bangalore";i:3;s:267:"Apply for COE Testing Lead Jobs in Bangalore India - COE Testing Lead Vacancy  in IT Software - QA / Testing / Documentation field with 8 to 10 years Work Experience, Key Skills are Coe Testing Lead, IT Software - QA / Testing / Documentation jobs in Bangalore  India";i:4;s:2693:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "COE Testing Lead",
		  "baseSalary": " 12  Lac  To  13  Lac ",
		  "description": "Roles and responsibilities
Ensure the “new” Testing teams (Both CoE and in the Feature Teams) meets their deadlines and delivers on the expectation
Work with the CoE test Leads (BVT, Regression, Integration, NFRs) to ensure cohesion and removal of any obstacles or blockers
Hold CoE test Leads and Feature team Testers accountable to meeting their testing obligations
Report to the head of Testing & Deployment on the efficacy of the testing interventions
Review Feature team testing compliance
Produce and collate test cycle reports for each Feature team Scum master 
Provide consolidated test reporting to the Head of Testing and Deployment
Assist Feature team QA engineers with testing risks and issues
Maintain testing procedure 
Manage testing gamification and continually verify metrics applicability and quality
Creating the TSR’s for the release sign off.
Pre-sprint, consolidate of security dimensions and provide Telecom Domain Test COE with New service definitions and Pen test information
Post sprint, confirm new service deployments

Desired Skills and Experience
Hands on experience on preparing E2E test strategy, business testing strategy for a complex program
Proven Experience in assessing virtualization opportunities and showcase business value benefits
hands on assessment of shift left testing and automation feasibility 
Strong practical experience leading an Agile or DevOps based Testing practice
Strong practical test automation experience
Excellent analysis skills
Excellent stakeholder relationship management
Excellent communication Skills
Excellent management skills
Excellent understanding of DevOps and Agile principles and paradigms
Excellent Understanding of Measuring performance in an Agile and DevOps environment 
Can Demonstrate Patience while still driving performance
Excellent Coach and Mentor
Can Demonstrate being a quick learner
Proven Systems thinking experience
Experienced in resource forecasting & allocation, status reporting, risk & issue management",
		  "educationRequirements": "Other Bachelor Degree",
		  "experienceRequirements": "8 - 10 Years",
		  "industry": "IT Software - QA / Testing / Documentation",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Karnataka",
		      "addressRegion": "Bangalore"
		    }
		  },
		 "qualifications": "Other Bachelor Degree",
		     "skills": "Coe Testing Lead"
		  }
		</script>
		";i:5;N;}