Company Description
Publicis Sapient is a digital transformation partner helping established organizations get to their future, digitally enabled state, both in the way they work and the way they serve their customers. We help unlock value through a start-up mindset and modern methods, fusing strategy, consulting and customer experience with agile engineering and problem-solving creativity. United by our core values and our purpose of helping people thrive in the brave pursuit of next, our 20,000+ people in 53 offices around the world combine experience across technology, data sciences, consulting, and customer obsession to accelerate our clients’ businesses through designing the products and services their customers truly value.
Job Description
As a Software Development Engineer- Java, you possess strong technical skills, developing software applications and services that make life easier for customers.
You will work with an agile team to develop, test, and maintain digital business applications. 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 - delivering the sprint outcomes, iteratively & incrementally, following the agile ceremoniesYou 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 requirementsYou 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 & wireframesYou will have breadth of concepts, tools & technologies to address NFRs like security, performance, reliability, maintainability and understand the need for trade-offsYou will bring in expertise to optimize and make the relevant design decisions (considering trade-offs) at the module / components levelYou will be a polyglot with a PE mindset – Open & Curious, learning & adopting new languages, platforms & toolkits constantlyYou will help evangelize and inculcate the engineering mindset and culture, share knowledge within Peer groups & ASDEs; Provide and receive constructive feedbackYou will have 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 & alertsYou will be accountable for development, unit testing of features with an E2E focus, following the engineering best practices, standards:Solve problems at a story level, given the stories and system designDesign Sub-systems/Modules, Ensure Implementation in-line with design & Integration with all dependent systems/modules; Focused on solving business problems.Write Unit & Acceptance Testcases, adopting a Test First approach applying TDD; while using BDD for Functional & Integration testingManage Tech DebtsUse SCM like GIT; Understand & adopt different branching strategies for code development;Use integrated tools like Jira, Confluence etc., along with other collaboration tools across geo locationsPerform Peer Reviews of sub-system, component level design & implementation, following the established coding standardsUse Static Analysis & Profiling tools to ensure high Code Quality & PerformancePractice the DevOps mindset, adopting CI/CD to Deliver, Deploy & Support the implementation from Dev., QA environments all the way to ProductionDocument Code (Doc as Code), Functional Features (BDD), User Manuals to help in the support & training
QualificationsUS citizen7+ years of professional work experience building large scale, large volume services & distributed apps., taking them through production and post-production life cyclesMigrate, refactor, lift and shift application components from on-prem to AWSFamiliar with Agile development and deliveryProvide on-going support inclusive of AWS onboarding, issue resolution and enhancements by working collaboratively with infrastructure & PS teams.Assist team lead with estimation of releases, application testing & validationUse 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 stylesPractice Imperative, Functional Programming stylesYou have experience with Core Java 8+ and abovePrior AWS development experience & developer certificationAWS Oracle RDS, EC2, Lambda, QuickSight, CloudwatchAWS DevSecOps tools experienceAPI management, User authentication and authorization frameworks and toolsYou are a problem solver choosing the relevant data structures, algorithms considering the tools for Time & Space ComplexityYou apply SOLID, DRY design principles, design patterns & practice Clean CodeYou are an expert at String Manipulation, Data/Time Arithmetic, Collections & GenericsYou practice & guide on handling failures à Error Management & Exception handlingYou build reliable & high-performance apps leveraging Eventing, Streaming, Concurrency, Multi-Threading & Synchronization libraries and frameworksYou design and build microservices from ground up, considering all NFRs & applying DDD, Bounded ContextsYou use one or more databases (RDBMS or NoSQL) based on the needsYou deploy to production, troubleshoot problems & provide live supportYou 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, CertificatesYou use one or more Web Application FrameworksSpring 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, virtualizationYou use proactive monitoring & alerting, dashboardsYou use Logging/Monitoring solutions (Splunk, ELK, Grafana)
Set Yourself Apart With:
AWS CertificationExperience in one or more of front-end development technologiesKnowledge of one or more security or integration frameworkJava EE, EJB, Websphere Application Server, Hibernate, Rational Application DeveloperOracle/PL/SQLFamiliarity with UI frameworks like JSF, JavaScript, jQueryExperienced with capital markets businesses, fixed Income industry knowledge
Travel:
At least 2 days/week to NYC downtown
Additional Information
Pay Range: $75,000 - $146,000 USD
The range shown represents a grouping of relevant ranges currently in use at Publicis Sapient. Actual range for this position may differ, depending on location and specific skillset required for the work itself.
Benefits of Working Here:
Flexible vacation policy; time is not limited, allocated, or accrued16 paid holidays throughout the yearGenerous parental leave and new parent transition programTuition reimbursement Corporate gift matching program
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 protected] or you may call us at +1-617-621-0200.