Associate Software Engineer (Fullstack)
TD Bank
- Location
- Toronto Ontario
- Work model
- On-Site
- Level
- Entry
- Salary
- $59.5k – $84k/yr
- Posted
- Sep 1, 2026
Skills
About this role
TD is committed to providing fair and equitable compensation opportunities to all colleagues. Growth opportunities and skill development are defining features of the colleague experience at TD. Our compensation policies and practices have been designed to allow colleagues to progress through the salary range over time as they progress in their role. The base pay actually offered may vary based upon the candidate's skills and experience, job-related knowledge, geographic location, and other specific business and organizational needs. As a candidate, you are encouraged to ask compensation related questions and have an open dialogue with your recruiter who can provide you more specific details for this role.
Job Description
About the role We are looking for an Associate Software Engineer to join a collaborative engineering team and develop broad capability across full-stack distributed application development. This L7 role is suited to an engineer who can apply sound software-engineering fundamentals, learn new technologies, and contribute to reliable solutions across the user interface, backend services, APIs, data, integration, testing, and deployment layers. You will contribute across the software delivery lifecycle, from understanding requirements and participating in design through implementation, testing, release, and support. The role provides an opportunity to build on mainframe experience while developing distributed application skills in Java, Node.js, Angular, REST APIs, databases, and cloud technologies. You will work with experienced engineers, receive guidance on broader technical decisions, and progressively take on more complex and independent work.
What you will do
Develop, test, troubleshoot, and maintain software across the full stack, including user interfaces, backend services, APIs, data, and integrations. Apply software-engineering fundamentals to understand requirements, participate in design, write maintainable code, and contribute to code reviews. Use Java, Node.js, Angular, REST APIs, SQL, and related technologies to build and support distributed applications. Use mainframe knowledge to understand existing programs, batch processing, data, interfaces, and business rules as part of modernization work. Design and execute appropriate tests, investigate defects, support releases, and participate in production support when required. Identify risks and dependencies, communicate status clearly, and escalate blockers early. Work collaboratively with engineers, quality specialists, analysts, architects, infrastructure teams, security teams, vendors, and business stakeholders. Contribute to documentation, automation, vulnerability remediation, and continuous improvement.
Required qualifications
2+ years of professional software engineering or application development experience. Experience with modern distributed application development, integration, or backend engineering using one or more of Java, Node.js, Angular, or TypeScript. Practical experience with COBOL, IMS, DB2, JCL, and SAS. Experience with software delivery practices, relational databases or SQL, batch processing, file interfaces, or data integration. Ability to troubleshoot technical issues, communicate clearly, learn across technology areas. Strong communication skills with the ability to collaborate effectively within a team environment. Proven commitment to teamwork, knowledge sharing, and building positive working relationships.
Preferred qualifications
Experience with mainframe modernization, application decomposition, re-platforming, API enablement, or batch migration. Experience with automated testing, CI/CD, source control, application security, monitoring, or observability. Familiarity with Agile delivery, change management, IT service management, technical documentation, or regulated enterprise