a:6:{i:0;s:12104:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Team Manager Operations F&a</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.cngriskplacement.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.cngriskplacement.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Team Manager Operations F&a</p>
					</div>
					</div>
					</section>
									<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-->
				
								<p class="mb5px"><i class="fa fa-briefcase mr7px fl w15px alpha50"></i> 5 - 10 Years</p>
				
									<p class="mb10px"><i class="fa fa-map-marker mr7px fl pl1px w15px alpha50"></i>Bangalore</p>
										
					<div>
					<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="345600">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="904119"><input type="hidden" name="subject" value="Applied for Team Manager Operations F&a">
					</form>
					</div>
			
						
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Job Description</p>
				<p class="aj mt10px">Job Description<br />
<br />
this Position Will Serve as a Key Member of the F&a Team of Gallagher Service Center<br />
<br />
report to the Service Delivery Manager (operations).<br />
<br />
require An Individual Who Has a Previous and Demonstrated Ability of Success in A.) Proven People Management Skills B.) Service Delivery<br />
<br />
the Team Lead Will Be Responsible for Understanding Operational Requirements, Researching Best Practices, Assist with the Design and Implementation of New Processes and Tools.<br />
<br />
require the Ability to Cultivate a Team Environment that Provides Exceptional Customer Service and Ensuring all Staff Members Perform At a Consistently High Level.<br />
<br />
require the Ability to Motivate, Instill Accountability and Achieve Results.<br />
<br />
require Monitoring the Effectiveness of a Team of Process Associates.<br />
<br />
require the Ability to Prepare Mis Reports and Do Various Analyses to Understand Improvement Opportunities.<br />
<br />
require the Ability to Interact with Customers and Manage Their Queries.<br />
<br />
require Providing Day-to-day Coordination On the Activities of the Team.<br />
<br />
require Attending and Responding to Written/electronic Correspondence.<br />
<br />
require to Do Performance Reviews of the Team Members At Regular Intervals<br />
<br />
require One to Upgrade One's Knowledge By Taking Up Company Sponsored Insurance Exams Certified By the Institutes if Applicable<br />
<br />
involve Mentoring of Team Members<br />
<br />
require One to Be Involved with Various Process Improvement Related Projects to Drive Efficiencies in the Team<br />
<br />
open to Travel to Client Location On Transition Usa/uk.<br />
<br />
mandatorily Require to Be Comfortable Working in all Shifts Including Night Shift.<br />
<br />
candidate Should Be a Team Lead On Papers for At Least  1 Year and Team Size Should Be More Than 10+</p>
				
				<table class="w100 formTable bdr0 mt10px">				
											<tr>
							<td class="w22 alpha75 p5px">Salary</td>
							<td class="p5px"> 6  Lac  To  7  Lac  50 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="w22 alpha75 p5px">Industry</td>
					<td class="p5px">ITES / BPO / KPO / LPO / Customer Service / Operations</td>
					</tr>
									<tr>
				<td class="w22 alpha75 p5px">Work Experience</td>
				<td class="p5px">5 - 10 Years</td>
				</tr>
									<tr>
					<td class="w22 alpha75 p5px">Qualification</td>
					<td class="p5px">Other Bachelor Degree, M.C.A, M.B.A/PGDM</td>
					</tr>					
									
				</table>
				
				
				</div>
				
				<br>
				<div class="bdrT pt20px">
									<p class="xlarge b">Key Skills</p>
					<div class="mt10px dif">
											<span class="bn dib p5px10px c2px headVr mr7px mb7px">operations management</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"> Operations Team Manager</span>
												<span class="bn dib p5px10px c2px headVr mr7px mb7px"></span>
											</div>
									</div>
				
				
				<br>
				<div class="bdrT pt20px">
				<p class="xlarge b">Company Profile</p>
				<div class="mt10px">
				
									<table class="w100 formTable bdr0 mt5px">
											<tr>
						<td class="w22 alpha75 p5px vat">Company Name</td>
						<td class="p5px vat"><p class="dif b">GSC LLP</p></td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">Company Profile
Arthur J. Gallagher & Co. (AJG) is a US-based global insurance brokerage and risk management services firm headquartered in Rolling Meadows, Illinois (a suburb of Chicago). The firm was established in 1927 and is one of the largest insurance brokers in the world.</td>
						</tr>
												<tr>
						<td class="w22 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:jaisoham@yahoo.com"> jaisoham@yahoo.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="345600">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="904119"><input type="hidden" name="subject" value="Applied for Team Manager Operations F&a">
					</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="h h2"><b class="plusMinus"></b>
				<h2>Jobs by Location</h2>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-bangalore.htm" title="Jobs in Bangalore">Bangalore</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-pune.htm" title="Jobs in Pune">Pune</a> <b class="alpha50 bn small">(21)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-mumbai.htm" title="Jobs in Mumbai">Mumbai</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-shimoga.htm" title="Jobs in Shimoga">Shimoga</a> <b class="alpha50 bn small">(2)</b></span>
									</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<h2>Jobs by Functional Area</h2>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxation</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-education-teaching-training-counselling-fid.htm" title="Education / Teaching / Training / Counselling / Academic Jobs">Education / Teaching / Training / Counselling / Academic</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-engineering-technical-rd-fid.htm" title="Engineering / Technical / R&D Jobs">Engineering / Technical / R&D</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-financial-services-fid.htm" title="Finance / Stock Market Jobs">Finance / Stock Market</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-fresh-graduate-fid.htm" title="Fresher / Trainee Jobs">Fresher / Trainee</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-front-office-data-entry-fid.htm" title="Front Office / Executive Assistant / Data Entry Jobs">Front Office / Executive Assistant / Data Entry</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-insurance-loan-credit-fid.htm" title="Insurance / Loan / Credit Management Jobs">Insurance / Loan / Credit Management</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-call-center-medical-transcription-fid.htm" title="ITES / BPO / KPO / LPO / Customer Service / Operations Jobs">ITES / BPO / KPO / LPO / Customer Service / Operations</a> <b class="alpha50 bn small">(13)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Quality</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="jobs-in-advertisement-marketing-fid.htm" title="Marketing / Advertising / PR / Media Planning Jobs">Marketing / Advertising / PR / Media Planning</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-property-construction-fid.htm" title="Real Estate / Construction Jobs">Real Estate / Construction</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-sales-marketing-fid.htm" title="Sales/Marketing Jobs">Sales/Marketing</a> <b class="alpha50 bn small">(6)</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>
				<!--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: 'R2NjMjI5ZkdueHN4QXRvRDdCY0F0QT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:113:"Team Manager Operations F&a Jobs in Bangalore - Vacancy in ITES / BPO / KPO / LPO / Customer Service / Operations";i:2;s:242:"Team Manager Operations F&a Jobs,Team Manager Operations F&a Jobs in Bangalore,Team Manager Operations F&a Vacancy in Bangalore,Team Manager Operations F&a jobs in India,ITES / BPO / KPO / LPO / Customer Service / Operations jobs in Bangalore";i:3;s:344:"Apply for Team Manager Operations F&a Jobs in Bangalore India - Team Manager Operations F&a Vacancy  in ITES / BPO / KPO / LPO / Customer Service / Operations field with 5 to 10 years Work Experience, Key Skills are operations management, Operations Team Manager,, ITES / BPO / KPO / LPO / Customer Service / Operations jobs in Bangalore  India";i:4;s:2495:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Team Manager Operations F&a",
		  "baseSalary": " 6  Lac  To  7  Lac  50 Thousand ",
		  "description": "Job Description

this Position Will Serve as a Key Member of the F&a Team of Gallagher Service Center

report to the Service Delivery Manager (operations).

require An Individual Who Has a Previous and Demonstrated Ability of Success in A.) Proven People Management Skills B.) Service Delivery

the Team Lead Will Be Responsible for Understanding Operational Requirements, Researching Best Practices, Assist with the Design and Implementation of New Processes and Tools.

require the Ability to Cultivate a Team Environment that Provides Exceptional Customer Service and Ensuring all Staff Members Perform At a Consistently High Level.

require the Ability to Motivate, Instill Accountability and Achieve Results.

require Monitoring the Effectiveness of a Team of Process Associates.

require the Ability to Prepare Mis Reports and Do Various Analyses to Understand Improvement Opportunities.

require the Ability to Interact with Customers and Manage Their Queries.

require Providing Day-to-day Coordination On the Activities of the Team.

require Attending and Responding to Written/electronic Correspondence.

require to Do Performance Reviews of the Team Members At Regular Intervals

require One to Upgrade One's Knowledge By Taking Up Company Sponsored Insurance Exams Certified By the Institutes if Applicable

involve Mentoring of Team Members

require One to Be Involved with Various Process Improvement Related Projects to Drive Efficiencies in the Team

open to Travel to Client Location On Transition Usa/uk.

mandatorily Require to Be Comfortable Working in all Shifts Including Night Shift.

candidate Should Be a Team Lead On Papers for At Least  1 Year and Team Size Should Be More Than 10+",
		  "educationRequirements": "Other Bachelor Degree, M.C.A, M.B.A/PGDM",
		  "experienceRequirements": "5 - 10 Years",
		  "industry": "ITES / BPO / KPO / LPO / Customer Service / Operations",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Karnataka",
		      "addressRegion": "Bangalore"
		    }
		  },
		 "qualifications": "Other Bachelor Degree, M.C.A, M.B.A/PGDM",
		     "skills": "operations management, Operations Team Manager,"
		  }
		</script>
		";i:5;N;}