a:6:{i:0;s:9447:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for graphic designer in gurgaon</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.bsrics.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.bsrics.com/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for graphic designer in gurgaon</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-->
				
								<div class="pt10px">
				<div class="xxxlarge fw6 dif">Graphic Designer</div>
									<p class="mt7px fw6">Gurgaon</p>
									
				<br>
				<p class="aj mt7px">Job description<br />
We are looking for a highly creative graphic designer who can take conceptual ideas and create visual representations for both web, all digital and printing platforms.<br />
<br />
Roles and responsibilities:<br />
Ideate, plan and design creative concepts & material, in collaboration with project managers, content/social media/development/campaign management teams and other designers Create and design various materials for print and digital collateral<br />
Create wireframes, storyboards, user flows, process flows and site maps to effectively communicate interaction and design ideas<br />
Develop custom graphics that can be scaled up across digital and nondigital platforms; creation of various collaterals that are medium/platform agnostic<br />
Designing marketing and branding collaterals such as print ads, brochures, flyers, standees, booklets etc as well as digital collaterals<br />
Implementing/overseeing design changes and improvements throughout the development process<br />
Translate complex processes/steps/operations into simple understandable consumable frameworks<br />
Integrating technical and visual solutions into a design concept<br />
Understanding trends within the scope of the industry we are working in<br />
Key requirements:<br />
Welldeveloped creative visualization, ideation and designing skills<br />
Proven UI experience Solid experience in creating wireframes, storyboards, user flows, process flows and site maps<br />
Proficiency in Adobe suites such as Photoshop, Illustrator, Adobe XD, After Effects, Indesign, Premier Pro, Page Maker and Flash<br />
Compelling portfolio of work over a wide range of creative projects<br />
Strong analytical skills<br />
A cle understanding of design principles, an up-to-date sense of aesthetics. Possess an understanding of Ui/Ux, advertising campaigns, social media platforms and overall digital deliverables<br />
Accuracy and attention to detail<br />
An understanding of the latest trends and their role within a commercial environment Professional approach to time, costs and deadlines<br />
Excellent time managem</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">3 - 7 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 3  Lac  To  9  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">IT Software - Others</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">B.C.A, B.Sc, B.Tech/B.E, M.C.A, M.Sc, M.Tech</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Illustrator</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Photoshop</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Graphic Designing</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Graphic Designer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Digital Designer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Creative Designer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> UX Designers</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.S.Buvanesh</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">Regus Business Centre, No.136, 3rd Floor, Shyamala Tower, Arcot Rd,</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">446686444 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:admin@bsrisolutions.com"> admin@bsrisolutions.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="696341">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="962377"><input type="hidden" name="subject" value="Applied for Graphic Designer">
					</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">(16)</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">(12)</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">(20)</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-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-client-server-fid.htm" title="IT Software - Client Server Jobs">IT Software - Client Server</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-advertisement-marketing-fid.htm" title="Marketing / Advertising / PR / Media Planning Jobs">Marketing / Advertising / PR /...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-journalism-media-publishing-fid.htm" title="Content Writing / Journalism / Editing Jobs">Content Writing / Journalism /...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-dba-database-management-fid.htm" title="IT Software - DataBase / Datawarehousing Jobs">IT Software - DataBase / Dataw...</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-analytic-business-intelligence-fid.htm" title="Analytic and Business Intelligence Jobs">Analytic and Business Intellig...</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: 'Ny9vclRvK01XemFGQ3hvWTIvams3dz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:69:"Job openings for graphic designer in gurgaon | BSRI Solutions Pvt Ltd";i:2;s:158:"Graphic Designer Jobs,Graphic Designer Jobs in Gurgaon,Graphic Designer Vacancy in Gurgaon,Graphic Designer jobs in India,IT Software - Others jobs in Gurgaon";i:3;s:312:"Apply for Graphic Designer Jobs in Gurgaon India - Graphic Designer Vacancy  in IT Software - Others field with 3 to 7 years Work Experience, Key Skills are Illustrator, Photoshop, Graphic Designing, Graphic Designer, Digital Designer, Creative Designer, UX Designers, IT Software - Others jobs in Gurgaon  India";i:4;s:2795:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Graphic Designer",
		  "baseSalary": " 3  Lac  To  9  Lac ",
		  "description": "Job description
We are looking for a highly creative graphic designer who can take conceptual ideas and create visual representations for both web, all digital and printing platforms.

Roles and responsibilities:
Ideate, plan and design creative concepts & material, in collaboration with project managers, content/social media/development/campaign management teams and other designers Create and design various materials for print and digital collateral
Create wireframes, storyboards, user flows, process flows and site maps to effectively communicate interaction and design ideas
Develop custom graphics that can be scaled up across digital and nondigital platforms; creation of various collaterals that are medium/platform agnostic
Designing marketing and branding collaterals such as print ads, brochures, flyers, standees, booklets etc as well as digital collaterals
Implementing/overseeing design changes and improvements throughout the development process
Translate complex processes/steps/operations into simple understandable consumable frameworks
Integrating technical and visual solutions into a design concept
Understanding trends within the scope of the industry we are working in
Key requirements:
Welldeveloped creative visualization, ideation and designing skills
Proven UI experience Solid experience in creating wireframes, storyboards, user flows, process flows and site maps
Proficiency in Adobe suites such as Photoshop, Illustrator, Adobe XD, After Effects, Indesign, Premier Pro, Page Maker and Flash
Compelling portfolio of work over a wide range of creative projects
Strong analytical skills
A cle understanding of design principles, an up-to-date sense of aesthetics. Possess an understanding of Ui/Ux, advertising campaigns, social media platforms and overall digital deliverables
Accuracy and attention to detail
An understanding of the latest trends and their role within a commercial environment Professional approach to time, costs and deadlines
Excellent time managem",
		  "educationRequirements": "B.C.A, B.Sc, B.Tech/B.E, M.C.A, M.Sc, M.Tech",
		  "experienceRequirements": "3 - 7 Years",
		  "industry": "IT Software - Others",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Haryana",
		      "addressRegion": "Gurgaon"
		    }
		  },
		 "qualifications": "B.C.A, B.Sc, B.Tech/B.E, M.C.A, M.Sc, M.Tech",
		     "skills": "Illustrator, Photoshop, Graphic Designing, Graphic Designer, Digital Designer, Creative Designer, UX Designers"
		  }
		</script>
		";i:5;N;}