Manager, Software Engineering - Core Java developer, Microservices, API
Mastercard
- Pune, Maharashtra
- Permanent
- Full-time
- Responsible for the analysis, design, development and delivery of software solutions
- Defines requirements for new applications and customizations, adhering to standards, processes and best practices
- Formally supervise and coach 2+ teams of engineers to build, enhance, and support multiple applications/services in the delivery of internal or market-facing Products, Platforms, or Product bundles
- Work with business/product owners to develop and deliver on new services to introduce new products and bundles
- Ensure objectives and development plans are established at the start of the year and reviewed continuously throughout the year
- Recruit and hire the right talent, always bringing in someone better than at least half the individuals in the role
- Continuously engage and improve teams’ performance by conducting recurring 1-1 meetings, knowing your people, managing career development, and understanding who is at risk
- Provide and facilitate timely feedback, coaching in the moment, and mentoring for staff at all levels
- Emulate and drive Mastercard Way behaviors through their behavior, recognitions, coaching, and employee engagement
- Manage and optimize budgets, forecasting, and cost allocation while delivering on business needs in the area of ownership
- Provide strategic thinking and leadership related to a wide range of applications and systems, or software-development methodologies
- Benchmark and drive engineering productivity, quality, and technology policy compliance in the areas of ownership
- Proactively share and seek knowledge within their Guild/Program to drive reuse of patterns/libraries/practices and enhance productivity
- IT experience with successful track record in managing small scale development organization (2+ teams) with demonstrated thought-leadership, cross-functional influence, and partnership
- Progressively grown career with proven design and development experiences in multiple languages, secure coding standards (e.g., OWASP, CWE, SEI CERT), and vulnerability management.
- Has skills in building applications using open frameworks to achieve reuse and reduce development times (e.g., Spring Boot, Steeltoe, Angular, DXP, others)
- Understands internals of operating systems (Windows, Linux) to deliver interoperable and performant code
- Able to perform debugging and troubleshooting to analyze core, heap, thread dumps and remove coding errors
- Has skills to document and coach team on the development practices and coding guidelines (e.g., branching, peer reviews, library use, logging, scanning rules, test-driven development, error handling)
- Understands use cases for advanced design patterns (e.g., service-to-worker, MVC, API gateway, intercepting filter, dependency injection, lazy loading, all from the gang of four) to implement efficient code
- Has skills to undertake a technical review of code across applications and their dependencies to look for anti-patterns and promote continuous refactoring
- Understands and elaborates technical debt and operational issues to drive prioritization discussions with stakeholders to improve the run experience
- Understands system architecture to plan for platform and infrastructure capacity (e.g., database, compute, network, storage) and drives the dependency prioritization to reduce the delivery lead time
- Has skills to understand customer journeys and ensure a Mastercard good experience by continuously reducing Mean time to mitigate (MTTM) for incidents and ensuring high availability (99.95% as a starting point)
- Has skills to simplify deployment and eliminate software and infrastructure snowflakes using standardized platforms, ephemeral instances, and automation
- Has skills to orchestrate release workflows and pipelines and apply standardized pipelines via APIs to achieve CI and CD using industry-standard tools (e.g., Jenkins, Bamboo, AWS/Azure pipelines, XL Release, others)
- Able to configure rules and build automation for code with vulnerability scanning and software composition analysis using standard tools (e.g., Sonar, Checkmarx, Nexus, JFrog XRay, Veracode, others)
- Has skills to define, organize, and report on test runs for major, minor, and hotfix releases (including unit, component level, system level, customer journeys, past customer issues, and regulatory controls)
- Has skills to conduct various performance tests (e.g., load, spike, breakpoint, endurance) to Understands application/service limits and behaviors