Description

Job Description

We at Publicis Sapient, enable our clients to Thrive in Next and to create business value through expert strategies, customer-centric experience design, and world class product engineering.The future of business is disruptive; transformative; and becoming digital to the core.In our 20 + years in IT, never have we seen such a dire need for transformation in every major industry, from financial services to automotive, consumer products, retail, energy, and travel.
Your Impact:

You will work in the spirit of agile & a product engineering mindset - delivering the sprint outcomes, iteratively & incrementally, following the agile ceremonies
You will groom the stories functionally & help define the acceptance criteria (Functional & Non-Functional/NFRs) collaborating actively with stakeholders - locally & in client org., understanding end-to-end customer requirements
You will actively contribute in technical grooming, brainstorming & whiteboarding design sessions to define & articulate the solution approaches, to identify tasks & estimates, and to document the module/sub-system design with their interfaces & wireframes
You will have breadth of concepts, tools & technologies to address NFRs like security, performance, reliability, maintainability and understand the need for trade-offs
You will bring in expertise to optimize and make the relevant design decisions (considering trade-offs) at the module / components level
You will be a polyglot with a PE mindset – Open & Curious, learning & adopting new languages, platforms & toolkits constantly


Qualifications

Your Skills & Experience:

You have 3+ years of professional work experience building large-scale, large-volume services & distributed apps., taking them through production and post-production life cycles.
You use more than one programming language with expertise in at least one; Ex:
Memory Management, GC, Templates/Generics, Closures, etc.
Multi-Threading, Sync/A-Sync.; Blocking/Non-Blocking execution styles
You practice Imperative, Functional Programming styles
You are aware of Cloud Platforms like AWS, GCP, Azure, etc.
You are a problem solver choosing the relevant data structures, and algorithms considering the tools for Time & Space Complexity
You apply SOLID, DRY design principles, design patterns & practice Clean Code
You are an expert at String Manipulation, Data/Time Arithmetic, Collections & Generics
You practice & guide on handling failures à Error Management & Exception handling
You build reliable & high-performance apps leveraging Eventing, Streaming, Concurrency, Multi-Threading & Synchronization libraries and frameworks
You develop web apps using HTML, CSS, Javascript & relevant frameworks (Angular, React, Vue)
You design and build microservices from the ground up, considering all NFRs & applying DDD, Bounded Contexts
You use one or more databases (RDBMS or NoSQL) based on the needs
You deploy to production, troubleshoot problems & provide live support
You understand the significance of security aspects & compliance to data, code & application security policies; You write secure code to prevent known vulnerabilities; You understand HTTPS/TLS, Symmetric/Asymmetric Cryptography, Certificates
You use one or more Web Application Frameworks
Spring or Spring Boot or Micronaut (Java)
Flask or Django (Python)
Express or Meteor or Koa (Node)
Asp.net MVC, WebApi or Nancy (.Net)
You use one or more messaging platforms (e.g. JMS/RabbitMQ/Kafka/Tibco/Camel)
You use Mocks & Stubs & related frameworks (Moq)
You use logging frameworks like Log4j, NLog, etc.
You use build tools like MSBuild, Maven, Gradle, Gulp, etc.
You understand and use containers, virtualization
You use proactive monitoring & alerting, dashboards
You use Logging/Monitoring solutions (Splunk, ELK, Grafana)
Set Yourself Apart With:

You understand infra. as code (cattle over pets)
You understand reactive programming concepts, Actor models & use RX Java / Spring React / Akka / Play, etc.
You are able to set up a CI/CD pipeline infrastructure & stack from grounds-up
You are able to articulate the pros, cons of designs & tradeoffs
You are aware of distributed tracing, debugging, and troubleshooting
You are aware of side-car, service mesh usage along with microservices
You are aware of distributed, cloud design patterns & architectural styles
You are aware of gateways, load-balancers, CDNs, Edge caching
You are aware of gherkin and cucumber for BDD automation
You are aware of performance testing tools like JMeter, Gatling
You are aware of one search solution like ElasticSearch, SOLR, Endeca
You are aware of one distributed caching solution like Redis, MemCache, etc.
You are aware of selenium for UI automation
You are aware of Rules engines like Drools, Easy Rules, etc.
A Tip from the Hiring Manager:

Software Development Engineers (SDE-I) are bright, talented, and motivated young minds with strong technical skills, developing software applications and services that make life easier for customers.
The SDE-I is expected to work with an agile team to develop, test, and maintain digital business applications.
As an SDE-I you will get an opportunity to work with industry-leading clients and global teams to solve complex business problems and build your skills on the full stack of application development technologies
Education:
Bachelor’s/Master’s Degree in Computer Engineering, Computer Science, or a related field
 

Education

Any Graduate