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 before have we seen such a dire need for transformation in every major industry; from financial services to automotive, consumer products, retail, energy, and travel.
To make this transformative journey a reality in these exciting times; we seek the Rockstar’s who’ll
- brave it out to go do the next “what will be” from “what is”
- exhibit the optimism that says there is no limit to what we can achieve
- deeply-skilled, bold, collaborative, flexible
- reimagine the way the world works to help businesses improve the daily lives of people, and the world
Our people thrive because of the belief that it’s both our privilege and responsibility to usher our clients and the world into Next.
- Our work is fueled by
- challenging boundaries,
- multidisciplinary collaboration,
- highly agile teams, and
- the power of the newest technologies and platforms.
If that’s you, come talk to us!
This is the world-class engineering team where you should build your career.
Software Development Engineers (SDE-II) are the bright talented and motivated young minds with strong technical skills, developing software applications and services that make life easier for customers.
The SDE-II is expected to work with an agile team to develop, test, and maintain digital business applications.
As an SDE-II 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
- You will work in the spirit of agile & a product engineering mindset - driving the sprint outcomes, iteratively & incrementally, following the agile ceremonies
- You will help define & prioritize Epics and Stories; Groom the stories functionally & help define the acceptance criteria (Functional & Non-Functional/NFRs) collaborating actively with stakeholders - locally & in client org., shaping end-to-end customer requirements
- You will lead the technical grooming, brainstorming & whiteboarding design sessions to define & articulate the solution approaches, to identify tasks & estimates, to design and document sub-system(s) along with interfaces & wireframes
- You will have breadth of concepts, tools & technologies to address NFRs like security, performance, reliability, maintainability and advocate relevant trade-offs
- You will bring in expertise to optimize and make the relevant design decisions (considering trade-offs) at the sub-system level & challenge the status-quo
- You will be a polyglot with a PE mindset – Open & Curious, learning & adopting new languages, platforms & toolkits constantly
- You will work with SDE-IIIs, SDMs to define & understand the overall system architecture, standards & guidelines, helping them with the details of the sub-system specifics
- You will mentor & guide, actively evangelize and inculcate the engineering mindset and culture, share knowledge within Peer groups, SDE-Is, ASDEs, while providing and receiving constructive feedback
- You will drive change with a continuous improvement mindset working on opportunities to shift left; Proactive about reduction of tech. debts, eliminating waste, increasing automation, using the right productivity tools, understanding client business, using dashboards for monitoring & alerts
- You will be accountable for sub-system design, development & deployment, quality with an E2E focus, following the engineering best practices, standards:
- Solve problems at an Epic level, given the overall business requirements
- Design Sub-systems focused on solving business problems; Ensure Implementation is in-line with design & well integrated with all other dependent sub-systems/systems
- Evangelize adoption of Test First approach & TDD; Apply BDD for Functional & Integration testing; Review Unit & Acceptance Test suites
- Ensure closure of Tech. Debts & adopt practices to prevent Tech. Debts
- Use SCM like GIT; Advocate the relevant branching strategies for code development;
- Use integrated tools like Jira, Confluence etc., along with other collaboration tools across geo locations
- Perform Peer Reviews of system/sub-system, module level design & implementation; Work with SDE-IIIs to establish coding standards
- Use Static Analysis & Profiling tools to ensure high Code Quality & Performance
- Practice & Inculcate the DevOps mindset, adopting CI/CD to Deliver, Deploy & Support the implementation from Dev., QA environments all the way to Production
Document Code (Doc as Code), Functional Features (BDD), Config. As Code, User Manuals to help in the support & training
- You have 8+ years of professional work experience
- You create POC’s on new technologies, building quick and usable solutions
- You use more than one programming language with deep expertise in language features, concepts and protocols; Ex:
- Memory Management, GC, Templates/Generics, Closures etc.
- Multi-Threading, Sync/A-Sync.; Blocking/Non-Blocking execution styles
- Lambdas, Streams, Performance Tuning, NIO, HTTP2, Websockets, gRPC, ProtoBuf
- You practice Imperative, Functional Programming styles
- You are a problem solver - choosing the relevant data structures, algorithms considering the tools for Time & Space Complexity
- You help in relevant technology & tools selection, build/buy decisions to solve the business problems
- You are an expert at reviewing & guiding the adoption of SOLID, DRY design principles, design patterns & 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, scalable & high-performance apps, services leveraging relevant architectural styles and patterns like Eventing Sourcing, CEP, Restful APIs, CQRS etc.
- You develop web apps using HTML, CSS, Java-script & relevant frameworks (Angular, React, Vue)
- You design and build microservices from grounds up applying DDD, Bounded Contexts; Considering multiple perspectives and tradeoffs to meet the NFRs
- You define solutions to scale up/scale out/Auto Scale as relevant, with robustness and resilience, applying patterns like circuit breakers & back propagation
- You understand CAP theorem and work with multiple databases (RDBMS or NoSQL)
- You deploy to production, trouble shoot problems & provide live support
- You practice and ensure coverage 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, SAML, Vaults, Key rotation, OAuth, JWT, MFA, DDOS etc.
- You are an expert & advocate the use of the relevant 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)
- You practice & ensure infra. as code (cattle over pets) using tools like terraform, cloud-formation, ansible etc.
- You are able to set-up a CI/CD pipeline infrastructure & stack from grounds-up
- You are able to articulate the pro’s, con’s of designs & tradeoffs
- You use distributed tracing apps/platforms, debug and troubleshoot with relevant tools
- You use side-cars, service mesh along with microservices
- You practice distributed, cloud design patterns & architectural styles
- You use gateways, load-balancers, CDNs, Edge caching, reverse proxies
- You use gherkin and cucumber for BDD automation
- You use performance testing tools like JMeter, Gatling
- You use search solutions like Elastic Search, SOLR, Endeca
- You use distributed caching solutions like Redis, Memcache etc.
- You use selenium for UI automation
- You use rules engines like Drools, Easy Rules etc.
- You work with Cloud Platforms like AWS, GCP, Azure etc.
- You are aware and familiar with reactive programming, observables (e.g. Spring Reactor/RX Java)
- You are aware of API gateways and Management Tools
- You are aware of GraphQL, Aggregate services, API Composition, SAGA pattern
- You are aware of K8S, Container Orchestration, Mesos, Consensus algorithms like PAXOS
Learning is part of our DNA. As an organization, we promote self-learning and the continuous development of yourself and others. We offer plenty of opportunities to build critical core consulting skills and learn new technologies. In addition to that you will be given the chance to support the growth of others as part of your own journey by becoming part of our ever-growing learning ecosystem, in which everyone is both a producer and consumer of learning.
Bachelor’s/Master’s Degree in Computer Engineering, Computer Science, or a related field
As part of our dedication to an inclusive and diverse workforce, Publicis Sapient is committed to Equal Employment Opportunity without regard for race, color, national origin, ethnicity, gender, protected veteran status, disability, sexual orientation, gender identity, or religion. We are also committed to providing reasonable accommodations for qualified individuals with disabilities and disabled veterans in our job application procedures. If you need assistance or an accommodation due to a disability, you may contact us at email@example.com