a:6:{i:0;s:11413:"				<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 coldfusion developer in delhi ncr north delhi delhi greater noida</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.soumyaconsultingservices.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.soumyaconsultingservices.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for coldfusion developer in delhi ncr north delhi delhi greater noida</p>
									<div class="pt10px">
				<div class="dt w100">
				<div class="dtc">
				<div class="xxxlarge fw6 dif">Senior Coldfusion Developer</div>
									<p class="mt7px fw6">Delhi, Greater Noida, Noida, North Delhi</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="984553">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="964850"><input type="hidden" name="subject" value="Applied for Senior Coldfusion 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.soumyaconsultingservices.in/vacancy_964850.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">Systems Integration & Development Inc. (SID), a rapidly growing IT company located in Rockville, MD is seeking a Sr. ColdFusion Developer to perform programming services. The successful candidate will have experience with developing web-based applications using ColdFusion, Javascript, and SQL, and a relational database. This is a full-time position located in Washington DC. Roles and responsibilities include:<br />
<br />
Performs programming services using ColdFusion<br />
Tests and corrects programs<br />
Performs programming analysis<br />
Applies standard programming procedures<br />
Recognizes interactions of other related programs<br />
Monitors the operation of programs and responds to problems by diagnosing and correcting errors in logic and coding<br />
Tests, documents work, writes and maintains operator instructions for assigned programs, and confers with other personnel to obtain or provide factual data<br />
Provides support in analyzing present performance of the program and takes action to correct deficiencies<br />
<br />
Interested Candidates please share updated resume<br />
Please share below details via email:<br />
1. CTC<br />
2. ETC<br />
3. Comfortable for relocate in Delhi/ NCR ?<br />
4. Total Experience<br />
5. Notice Period<br />
6. Comfortable for evening shift(06:30 PM to 2:30PM)?<br />
<br />
Note: Evening shift interested candidates only apply.</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">8 - 12 Years</td>
				</tr>			
									<tr>
					<td class="alpha75 p5px">Salary</td>
					<td class="p5px">Not Disclosed</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">B.Tech/B.E, M.C.A</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Coldfusion Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px">Coldfusion</span>
												<span class="bdr dib p2px10px mr5px mt2px">Sr. ColdFusion Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px">JavaScript</span>
												<span class="bdr dib p2px10px mr5px mt2px">MySQL</span>
												<span class="bdr dib p2px10px mr5px mt2px">Coldfusion 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 vat">Company Name</td>
						<td class="p5px vat"><p class="dif b">Sai Creative India</p></td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px vat">About Company</td>
						<td class="p5px vat">Studies have revealed that people now spend more time online than they do watching tv…and while those million dollar ad spots on tv may have been out of your price range, the internet is not. Social media provides an amazing and cost effective way to reach your audience.

S C W can help you to capitalize on the internet as a means of creating awareness about your business. With a wide range of social media platforms available. The quality of our work is a testament to our strong commitment to your goals and a desire for positive return on your investment. Our work ranges from Web Development, Web Design, Testing.</td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">Priya Gupta</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">Khasra No -251, Greater NoidaSector -4</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">9968880570 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:hr@soumyaconsultingservices.com"> hr@soumyaconsultingservices.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="984553">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="964850"><input type="hidden" name="subject" value="Applied for Senior Coldfusion 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-noida.htm" title="Jobs in Noida">Noida</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-gurgaon.htm" title="Jobs in Gurgaon">Gurgaon</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-delhi.htm" title="Jobs in Delhi">Delhi</a> <b class="alpha50 bn small">(3)</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-hyderabad.htm" title="Jobs in Hyderabad">Hyderabad</a> <b class="alpha50 bn small">(2)</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>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-greaternoida.htm" title="Jobs in Greater Noida">Greater Noida</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">(7)</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">(2)</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">(2)</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">(1)</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">(1)</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">(1)</span><a href="jobs-in-fresh-graduate-fid.htm" title="Fresher / Trainee Jobs">Fresher / Trainee</a></p>
										<p class="mb5px "><span class="fr">(1)</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">(1)</span><a href="jobs-in-software-mainframe-fid.htm" title="IT Software - Mainframe Jobs">IT Software - Mainframe</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: 'QkRzb0NQWnlKUklORUE3dzlnK3pXUT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:111:"Job openings for coldfusion developer in delhi ncr north delhi delhi greater noida | Soumya Consulting Services";i:2;s:293:"Senior Coldfusion Developer Jobs,Senior Coldfusion Developer Jobs in Delhi, Greater Noida, Noida,Senior Coldfusion Developer Vacancy in Delhi, Greater Noida, Noida,Senior Coldfusion Developer jobs in India,IT Software - Application Programming / Maintenance jobs in Delhi, Greater Noida, Noida";i:3;s:421:"Apply for Senior Coldfusion Developer Jobs in Delhi, Greater Noida, Noida India - Senior Coldfusion Developer Vacancy  in IT Software - Application Programming / Maintenance field with 8 to 12 years Work Experience, Key Skills are Coldfusion Developer,Coldfusion,Sr. ColdFusion Developer,JavaScript,MySQL,Coldfusion Developer, IT Software - Application Programming / Maintenance jobs in Delhi, Greater Noida, Noida  India";i:4;s:3250:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Senior Coldfusion Developer",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "Sai Creative India",
	        "value":  "964850"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "Sai Creative India",
	      "description": "Studies have revealed that people now spend more time online than they do watching tv…and while those million dollar ad spots on tv may have been out of your price range, the internet is not. Social media provides an amazing and cost effective way to reach your audience.

S C W can help you to capitalize on the internet as a means of creating awareness about your business. With a wide range of social media platforms available. The quality of our work is a testament to our strong commitment to your goals and a desire for positive return on your investment. Our work ranges from Web Development, Web Design, Testing.",
	      "telephone" : "9968880570",
	      "email" : "hr@soumyaconsultingservices.com"  
	       },
		  "url": "http://www.soumyaconsultingservices.in/job-openings-for-coldfusion-developer-delhi-ncr-north-delhi-delhi-greater-noida-964850.htm",
          "datePosted": "2021-04-13",
          
		  "baseSalary": "",
		  "description": "Systems Integration & Development Inc. (SID), a rapidly growing IT company located in Rockville, MD is seeking a Sr. ColdFusion Developer to perform programming services. The successful candidate will have experience with developing web-based applications using ColdFusion, Javascript, and SQL, and a relational database. This is a full-time position located in Washington DC. Roles and responsibilities include:

Performs programming services using ColdFusion
Tests and corrects programs
Performs programming analysis
Applies standard programming procedures
Recognizes interactions of other related programs
Monitors the operation of programs and responds to problems by diagnosing and correcting errors in logic and coding
Tests, documents work, writes and maintains operator instructions for assigned programs, and confers with other personnel to obtain or provide factual data
Provides support in analyzing present performance of the program and takes action to correct deficiencies

Interested Candidates please share updated resume
Please share below details via email:
1. CTC
2. ETC
3. Comfortable for relocate in Delhi/ NCR ?
4. Total Experience
5. Notice Period
6. Comfortable for evening shift(06:30 PM to 2:30PM)?

Note: Evening shift interested candidates only apply.",
		  "educationRequirements": "B.Tech/B.E, M.C.A",
		  "experienceRequirements": "8 - 12 Years",
		  "industry": "IT Software - Application Programming / Maintenance",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Delhi/NCR, ",
		      "addressRegion": "Delhi, Greater Noida, Noida, North Delhi"
		    }
		  },
		 "qualifications": "B.Tech/B.E, M.C.A",
		     "skills": "Coldfusion Developer,Coldfusion,Sr. ColdFusion Developer,JavaScript,MySQL,Coldfusion Developer"
		  }
		</script>
		";i:5;N;}