Unclassified - New York, NY
posted about 2 months ago
As a Software Development Engineering Manager at Publicis Sapient, you will leverage your strong technical skills to develop software applications and services that enhance customer experiences. You will be part of an agile team responsible for the development, testing, and maintenance of digital business applications. This role offers the opportunity to collaborate with industry-leading clients and global teams to tackle complex business challenges while honing your skills across the full stack of application development technologies. In this position, you will embody the principles of agile and product engineering, focusing on delivering sprint outcomes iteratively and incrementally. You will engage in grooming stories functionally and help define acceptance criteria, collaborating closely with stakeholders both locally and within client organizations to understand end-to-end customer requirements. Your contributions will include participating in technical grooming, brainstorming, and design sessions to articulate solution approaches, identify tasks and estimates, and document module and subsystem designs along with their interfaces and wireframes. You will be expected to have a broad understanding of concepts, tools, and technologies to address non-functional requirements (NFRs) such as security, performance, reliability, and maintainability, while also recognizing the need for trade-offs in design decisions. As a polyglot with a product engineering mindset, you will continuously learn and adopt new languages, platforms, and toolkits. You will mentor SDE-IIs in understanding the overall system architecture and engineering standards while fostering a culture of knowledge sharing and constructive feedback within your peer groups. Your role will also involve a continuous improvement mindset, focusing on opportunities to reduce technical debt, eliminate waste, increase automation, and utilize the right productivity tools. You will be accountable for the development and unit testing of features with an end-to-end focus, adhering to engineering best practices and standards. This includes solving problems at the story level, designing subsystems/modules, ensuring implementation aligns with design, and integrating with all dependent systems/modules to effectively address business problems. You will write unit and acceptance test cases, adopting a Test-First approach and applying Test-Driven Development (TDD) principles, while also utilizing Behavior-Driven Development (BDD) for functional and integration testing. Additionally, you will manage technical debts, utilize source control management tools like GIT, and adopt various branching strategies for code development. Your responsibilities will also include performing peer reviews of subsystem and component-level designs, ensuring high code quality and performance through static analysis and profiling tools, and practicing a DevOps mindset by adopting Continuous Integration/Continuous Deployment (CI/CD) practices to support the implementation from development through to production.