This role sits on a high-visibility, agile engineering team building a next-generation digital banking platform from the ground up. You'll join a tight-knit team of 5-7 engineers operating in a true product model-partnering closely with a product owner, scrum master, QA, and business systems analysts-where engineers have real ownership over design, delivery, and technical direction.
As a Lead Software Engineer, you'll work hands-on across mobile and full-stack technologies while helping move digital banking customers onto a modern cloud platform. This is not a maintenance role. It's an opportunity to influence architecture, shape engineering practices, and build new capabilities end-to-end on a program with strong leadership visibility and long-term strategic impact.
At the expert level, you are responsible for writing high-quality code while guiding the team's technical approach-from requirements through deployment-ensuring solutions are resilient, secure, and aligned with banking technology standards across the Software Development Lifecycle (SDLC).
Primary Responsibilities- Serve as a hands-on technical leader, spending the majority of your time (approximately 80%) designing and developing software while mentoring and coaching other engineers.
- Design, develop, and maintain applications in alignment with approved SDLC processes, emphasizing clean, resilient, and well-tested code that minimizes risk to the Bank.
- Lead technical design discussions and architecture sessions, contributing ideas and recommendations to application architecture, engineering practices, and design patterns.
- Review, approve, and provide guidance on pull requests, technical designs, and proposed changes, ensuring quality, stability, and maintainability.
- Establish and coach best practices for code reviews, code quality, testing, and continuous improvement.
- Author organized, efficient, secure source code at an expert level in at least one programming language, with professional proficiency in at least one additional language.
- Guide team members on appropriate data structures, algorithms, and technical approaches to solve business problems.
- Oversee source control management activities, including reviewing merges and ensuring code is properly integrated into the production deployment path.
- Review testing strategies and code coverage to ensure comprehensive validation, and coach team members on opportunities to improve test quality.
- Drive adherence to engineering patterns and practices related to performance testing, resiliency, scalability, and optimization.
- Partner with delivery teams to review and approve technical requirements, ensuring completeness, accuracy, and feasibility.
- Collaborate across teams and domains, recommending process or architectural improvements where technical concerns warrant change.
- Communicate architecture, progress, risks, and challenges clearly to both technical and business stakeholders.
- Present team work at internal forums, architecture reviews, and peer group meetings; contribute to internal knowledge sharing through documentation or blog posts.
- Understand and comply with the Company's risk, regulatory, and internal control standards, escalating risk-related issues as appropriate.
- Promote a culture of belonging that reflects the M&T Bank brand.
- Perform other related duties as assigned.
Technical Environment & Experience HighlightsSuccessful candidates will bring strong hands-on experience and curiosity across modern technologies, including:
- Mobile development experience (strongly preferred), with exposure to:
- Full-stack experience, including:
- Front-end frameworks such as Angular
- Hands-on API development
- Java and Spring Boot exposure
- Modern engineering practices, including:
- CI/CD pipelines
- Git-based source control (e.g., GitLab)
- Performance, resiliency, and reliability engineering
- Working knowledge of databases and distributed systems
- Comfort working across multiple languages and value streams, with the ability to learn quickly and adapt
Education and Experience Required- Associate's degree and a minimum of 7 years' systems analysis and/or application development work experience or Bachelor's degree and a minimum of 5 years' systems analysis and/or application development work experience. In lieu of a degree, a combined minimum of 9 year's education and/or relevant work experience, including a minimum of 5 years' system analysis and/or application development work experience.
- Full-stack development experience, including front-end frameworks such as Angular
- Hands-on API development and integration experience
- Experience with Java and Spring Boot-based services
- Familiarity with CI/CD pipelines, automated testing, and modern DevOps practices
- Experience using Git-based source control (e.g., GitLab)
- Working knowledge of databases, performance optimization, and resilient system design
Education and Experience Preferred- Hands-on mobile development experience including Kotlin, Java, and/or Swift
- Expert analytical and problem-solving skills specific to application development
- Experience working in agile, collaborative team environments
- Ability to work autonomously while balancing multiple complex initiatives
- Strong organizational and time-management skills
- Advanced written and verbal communication skills
- Experience driving project milestones and delivery timelines
- Proven experience leading technical initiatives or projects
- Experience partnering with and presenting to both technology and business stakeholders
#LI-JB3
M&T Bank is committed to fair, competitive, and market-informed pay for our employees. The pay range for this position is $116,400.00 - $194,000.00 Annual (USD). The successful candidate's particular combination of knowledge, skills, and experience will inform their specific compensation.
LocationBuffalo, New York, United States of America