Chennai, Tamil Nadu
Software Engineer #1056419Job Description:
- Employees in this job function are responsible for designing, developing, testing and maintaining software applications and products to meet customer needs.
- They are involved in the entire software development lifecycle including designing software architecture, writing code, testing for quality and deploying the software to meet customer requirements.
- Full-stack software engineering roles, who can develop all components of software including user interface and server side also fall within this job function.
Key Responsibilities:
- Engage with customers to deeply understand their use-cases, pain points, and requirements, showcasing empathy and advocating for user-centric software solutions
- Solve complex problems by designing, developing, and delivering using various tools, languages, frameworks, methodologies (like agile) and technologies
- Assess the requirements of the software application or service and determine the most suitable technology stack, integration method, deployment strategy, etc.
- Create high-level software architecture designs that outline the overall structure, components, and interfaces of the application
- Collaborate with cross functional teams like product owners, designers, architects etc.
- Define and implement software test strategy, guidelines, policies and processes in line with organization vision, industry regulations and market best practices.
- Work on continuously improving performance and optimizing the application and implement new technologies to maximize development efficiency
- Familiar with programming practices, such as test-driven development, continuous integration, and continuous delivery
- Support security practices to safeguard user data including encryption and anonymization.
- Create user-friendly and interactive interfaces
- Develop and maintain back-end applications like APIs and microservices using server-side languages
- Evaluate and incorporate emerging technologies and capabilities to deliver their solutions, and are monitoring and participating in solutions for new stack layers, often involving industry collaboration
Skills Required:
- Full Stack Java Developer, React, Microservices, Spring Boot, cloudbuild, GCP
Skills Preferred:
- Big Query,, POSTGRES, Cloud SQL
Experience Required:
- Engineer 3 Exp: Prac. In 2 coding lang. or adv. Prac. in 1 lang.
- 6+ years in IT; 4+ years in development
Experience Preferred:
- Understanding of implementing APIGEE endpoints using java and SpringBoot.
- Understanding of various caching layers like endpoint (reverse proxy), cache aside, read/ write through.
- Strong sense of code with ability to analyze code using quality toold like SonarQube, Cycode, 42 Crunch to review, rework and deliver Quality code.
- Do code deployments using CICD pipeline with GCP - Tekton and Terraform config.
- Overall 7+ years of experience in developing and maintaining enterprise scale Web applications and Backend Services
- 5+ years of technical expertise in Core Java, Spring Boot, Spring Core, Spring Batch, Reactive programming, Micro services, streams understanding for data pipelines.
- 3+ years of experience in Cloud (GCP, AWS, AZURE).
- Ability to architect microservices in GCP cloud and 2+ years of experience in GCP Features - Compute Engine, Cloud Run, Cloud SQL, Pub/Sub, Redis etc.
Education Required:
- Bachelor's Degree
Education Preferred:
- Master's Degree
Additional Information :
Other Information: Nice to Have Skills:
- 5+ years of experience in architecting and implementing fault tolerant, highly available microservices.
- GCP and Reactive certifications will be an added advantage.
- Should have knowledge in Structured (PostgreSQL, SqlServer, DB2) and unstructured database and have the experience writing database scripts using DDL or queries using DML.
- Experience in SRE in Java, GCP, Tekton and ability to architect the services considering observability, traceability and monitoring aspects.
- At least 4 years of experience in Agile scrum software development process.
- Should have worked on delivering large complex digital systems (transactional & non-transactional) that used traditional and headless architectural patterns driving personalized and targeted digital experiences.
- Ability to work in team in diverse/ multiple stakeholder environment.
- Experience and desire to work in a Global delivery environment.
- Proven ability to work creatively and analytically in a problem-solving environment Desire to work in an information system environment.
- Excellent communication skills with the ability to adapt your communication style to the audience.
- Demonstrated ability to drive development of highly technical technology services and capabilities.
- Experience deployment using source control using change sets and CICD pipelines. (cloud build, tekton)