a:6:{i:0;s:13523:"					<div id="append2PageTittle">
    				<div class="page-title-inner bread-right head-inner fo">
    				<div id="breadcrumb">
					<div class="h1"><h1>Job openings for sailpoint developer in bangalore hyderabad</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.titans.co.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.titans.co.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for sailpoint developer in bangalore hyderabad</p>
					</div>
					</div>
					</div>
					<script>jQuery('#breadcrumbA').append(jQuery('#append2PageTittle').html());jQuery('#append2PageTittle').remove()</script>
									<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="pt10px">
				<div class="dt w100">
				<div class="dtc">
				<div class="xxxlarge fw6 dif">Sailpoint Developer</div>
									<p class="mt7px fw6">Bangalore, Hyderabad</p>
								
				</div>
				<div class="dtc w125px"><div class="mt7px">
									
					<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="300876">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="1015370"><input type="hidden" name="subject" value="Applied for Sailpoint Developer">
					</form>
			
									</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.titans.co.in/vacancy_1015370.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">Overall Exp – 3+ Years<br />
Primary Skill: 3+ years of experience in end-to-end SailPoint IdentityIQ (IIQ) implementation. <br />
Secondary Skill(s): Good to have an understanding of OAUTH, JSON, REST, SOAP and Network Protocols (SSL, SSH, FTP, SMTP, HTTP and HTTPS etc.)<br />
Work Location: Anywhere in India (Post Covid Hyd or Bangalore) <br />
Technical Environment: SailPoint IdentityIQ<br />
Key Job Description/Responsibilities:<br />
•	Design, Develop and Deploy SailPoint IIQ implementation(s).<br />
•	Contribute to or Lead the Requirements Gathering activities.<br />
•	Contribute to or Lead the activities for Technical Design.<br />
•	Contribute to or Lead the Project Documentation, such as the Solution Requirements Specifications, Business Requirements Document, Technical Design Document, Test Cases Document etc.<br />
•	Develop code and perform unit testing in line with the requirements and design, for all client-specific use cases.<br />
•	Contribute to or Lead the Code Review activities.<br />
•	Perform Integration Testing.<br />
•	Contribute to debugging and troubleshooting of issues, including interactions with the technology vendor.<br />
•	Assist the client(s) with execution of User Acceptance Testing.<br />
•	Assist the client(s) with readiness for deployment and actual deployment, followed by Post-Production Support.<br />
•	Contribute to business development activities, such as working on business proposals.<br />
•	Contribute to or Lead any possible IAM strategy engagements which would encompass Current State Assessment, Vendor Comparison and Selection, Target State Documentation, and Road Map, etc. <br />
•	Contribute to or Lead internal SailPoint IIQ training sessions.<br />
•	Adhere to and implement security best practices across all applicable engagements. <br />
<br />
Qualifications and Experience Required: <br />
•	B.Tech / M.Tech / MS / MCA / MBA <br />
•	Experience — 3+ years in SailPoint IdentityIQ end-to-end implementations. <br />
•	Candidate should have overall 3+ years of experience implementing SailPoint IAM projects. <br />
•	Experience in implementing at least one end-to-end Sai</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">2 - 8 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 8  Lac  50 Thousand  To   22 Lac  50 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">IT Software - Network Administration, Security</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">B.C.A, B.Tech/B.E, M.C.A, M.Tech</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Sailpoint Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> JSON</span>
												<span class="bdr dib p2px10px mr5px mt2px"> IdentityIQ</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Web Developer</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">Mr. Mahesh</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">Bangalore</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9986470009 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:crmahesh@titans.co.in"> crmahesh@titans.co.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="300876">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="1015370"><input type="hidden" name="subject" value="Applied for Sailpoint Developer">
					</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-bangalore.htm" title="Jobs in Bangalore">Bangalore</a> <b class="alpha50 bn small">(40)</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">(15)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-gurgaon.htm" title="Jobs in Gurugram">Gurugram</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-dakshina-kannada.htm" title="Jobs in Dakshina Kannada">Dakshina Kannada</a> <b class="alpha50 bn small">(2)</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">(2)</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">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-noida.htm" title="Jobs in Noida">Noida</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">(1)</b></span>
										<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">(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">(19)</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">(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-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Q...</a></p>
										<p class="mb5px "><span class="fr">(4)</span><a href="jobs-in-analytic-business-intelligence-fid.htm" title="Analytic and Business Intelligence Jobs">Analytic and Business Intellig...</a></p>
										<p class="mb5px "><span class="fr">(3)</span><a href="jobs-in-client-server-fid.htm" title="IT Software - Client Server Jobs">IT Software - Client Server</a></p>
										<p class="mb5px "><span class="fr">(3)</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 "><span class="fr">(3)</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">(2)</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 "><span class="fr">(2)</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 "><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>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-biotech-scientist-fid.htm" title="Pharma / R&D / Biotech Jobs">Pharma / R&D / Biotech</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</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">(1)</span><a href="jobs-in-erp-crm-edp-software-fid.htm" title="IT Software- ERP / CRM / EDP / MIS Jobs">IT Software- ERP / CRM / EDP /...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxati...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</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>
										<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: 'bENJRHUvdlJVaStCRlZOKy8wM2FvZz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:79:"Job openings for sailpoint developer in bangalore hyderabad | Titan Consultancy";i:2;s:235:"Sailpoint Developer Jobs,Sailpoint Developer Jobs in Bangalore, Hyderabad,Sailpoint Developer Vacancy in Bangalore, Hyderabad,Sailpoint Developer jobs in India,IT Software - Network Administration, Security jobs in Bangalore, Hyderabad";i:3;s:338:"Apply for Sailpoint Developer Jobs in Bangalore, Hyderabad India - Sailpoint Developer Vacancy  in IT Software - Network Administration, Security field with 2 to 8 years Work Experience, Key Skills are Sailpoint Developer, JSON, IdentityIQ, Web Developer, IT Software - Network Administration, Security jobs in Bangalore, Hyderabad  India";i:4;s:3317:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Sailpoint Developer",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "",
	        "value":  "1015370"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "",
	      "description": "",
	      "telephone" : "9986470009",
	      "email" : "crmahesh@titans.co.in"  
	       },
		  "url": "http://www.titans.co.in/job-openings-for-sailpoint-developer-bangalore-hyderabad-1015370.htm",
          "datePosted": "2022-07-04",
          
		  "baseSalary": " 8  Lac  50 Thousand  To   22 Lac  50 Thousand ",
		  "description": "Overall Exp – 3+ Years
Primary Skill: 3+ years of experience in end-to-end SailPoint IdentityIQ (IIQ) implementation. 
Secondary Skill(s): Good to have an understanding of OAUTH, JSON, REST, SOAP and Network Protocols (SSL, SSH, FTP, SMTP, HTTP and HTTPS etc.)
Work Location: Anywhere in India (Post Covid Hyd or Bangalore) 
Technical Environment: SailPoint IdentityIQ
Key Job Description/Responsibilities:
•	Design, Develop and Deploy SailPoint IIQ implementation(s).
•	Contribute to or Lead the Requirements Gathering activities.
•	Contribute to or Lead the activities for Technical Design.
•	Contribute to or Lead the Project Documentation, such as the Solution Requirements Specifications, Business Requirements Document, Technical Design Document, Test Cases Document etc.
•	Develop code and perform unit testing in line with the requirements and design, for all client-specific use cases.
•	Contribute to or Lead the Code Review activities.
•	Perform Integration Testing.
•	Contribute to debugging and troubleshooting of issues, including interactions with the technology vendor.
•	Assist the client(s) with execution of User Acceptance Testing.
•	Assist the client(s) with readiness for deployment and actual deployment, followed by Post-Production Support.
•	Contribute to business development activities, such as working on business proposals.
•	Contribute to or Lead any possible IAM strategy engagements which would encompass Current State Assessment, Vendor Comparison and Selection, Target State Documentation, and Road Map, etc. 
•	Contribute to or Lead internal SailPoint IIQ training sessions.
•	Adhere to and implement security best practices across all applicable engagements. 

Qualifications and Experience Required: 
•	B.Tech / M.Tech / MS / MCA / MBA 
•	Experience — 3+ years in SailPoint IdentityIQ end-to-end implementations. 
•	Candidate should have overall 3+ years of experience implementing SailPoint IAM projects. 
•	Experience in implementing at least one end-to-end Sai",
		  "educationRequirements": "B.C.A, B.Tech/B.E, M.C.A, M.Tech",
		  "experienceRequirements": "2 - 8 Years",
		  "industry": "IT Software - Network Administration, Security",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Karnataka, Telangana",
		      "addressRegion": "Bangalore, Hyderabad"
		    }
		  },
		 "qualifications": "B.C.A, B.Tech/B.E, M.C.A, M.Tech",
		     "skills": "Sailpoint Developer, JSON, IdentityIQ, Web Developer"
		  }
		</script>
		";i:5;N;}