Solutions Design IT Specialist
Quick Summary
Work Location:Toronto, Ontario, Canada Hours:37.5 Line of Business:Technology Solutions Pay Details:$125,000 - $156,
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.
We are looking for a Senior Java Developer / Solutions Design IT Specialist to join our Payments Engineering team and help build, maintain, and evolve high-performance, reliable, fault-tolerant applications. Our systems move money, so correctness, durability, and predictable performance under load are non-negotiable.
This role is for an engineer who goes beyond using Java and Spring APIs. You understand how Java works internally: streams, threads, concurrency primitives, memory management, garbage collection, and JVM runtime behaviour. You can trace a throughput drop to lock contention, an allocation hotspot, or a misconfigured connection pool, and you know how seemingly small implementation choices affect latency, memory footprint, and system reliability.
You will deliver new capabilities, proactively identify and resolve performance and reliability issues, and build comprehensive automated test suites that give the team confidence to ship. You will work comfortably at both the application level and the underlying Java/JVM level.
Responsibilities
~2 min read- →Work with architects, product owners, QE, SRE, and operations teams to turn business requirements into robust technical solutions.
- →Design, build, and maintain scalable, fault-tolerant services using Java and Spring Boot. Write clean, maintainable, production-grade code.
- →Build event-driven components that produce and consume messages through Kafka or MQ. Ensure correct ordering, delivery guarantees, and handling of poison messages.
- →Implement distributed transaction patterns, including SAGA orchestration and choreography with compensating actions, and the Transactional Outbox pattern for reliable event publishing.
- →Design idempotent APIs and message consumers that tolerate retries, duplicate delivery, and partial failures without double-processing payments.
- →Apply durable execution principles so long-running payment workflows can survive process restarts, infrastructure failures, and downstream outages, and resume correctly.
- →Use modern Java features where they fit: virtual threads, structured concurrency, records, sealed types, and pattern matching. Understand their trade-offs and limits, such as virtual thread pinning and the effect on ThreadLocal usage.
- →Identify, diagnose, and resolve throughput, latency, and memory issues across the application, JVM, messaging, and database layers.
- →Build resilience into services through timeouts, retries with backoff, circuit breakers, bulkheads, back-pressure, and graceful degradation.
- →Build comprehensive automated test suites, including unit, integration, contract, component, and end-to-end tests.
- →Write tests that target concurrency, idempotency, duplicate and out-of-order delivery, partial failure, and recovery scenarios.
- →Conduct thorough code reviews focused on correctness, thread safety, resource management, and performance.
- →Mentor team members on Java internals, concurrency, performance engineering, and distributed systems best practices.
- →Contribute to architecture decisions, technical design documents, and engineering standards.
Requirements
~2 min read- 10+ years of professional software development experience, with at least 5 years building production systems in Java.
- Hands-on experience with modern Java (17+, ideally 21), including virtual threads, records, sealed types, and pattern matching.
- Deep understanding of Java internals (Concurrency, Streams, Memory Management, and JVM behaviour)
- Strong experience with Spring Boot and the wider Spring ecosystem (Spring Core, Spring Data/JPA, Spring Transaction Management, Spring Kafka/JMS). You should understand how Spring works internally, including proxies, bean lifecycle, transaction propagation, and auto-configuration.
- Production experience with Apache Kafka (partitions, consumer groups, offsets, rebalancing, delivery semantics) and an enterprise messaging system such as IBM MQ (queues, transactions, redelivery, backout handling).
- Solid understanding of distributed systems: consistency models, partial failure, idempotency, retries, ordering, and exactly-once vs. at-least-once trade-offs.
- Practical experience designing and building event-driven and distributed systems, including microservices.
- Clear understanding of distributed systems fundamentals: CAP trade-offs, eventual consistency, ordering guarantees, network partitions, and failure modes.
- Proven experience implementing: idempotency, the SAGA pattern with compensating transactions, the Transactional Outbox pattern, retry and deduplication strategies
- Understanding of durable execution concepts: workflow state persistence, replay, checkpointing, and guaranteed completion of long-running processes.
- Experience with resilience patterns, such as circuit breakers, bulkheads, rate limiting, timeouts, and back-pressure (for example, using Resilience4j).
- Strong relational database skills: SQL tuning, execution plans, indexing, isolation levels, locking, and connection pool management.
- Strong analytical and problem-solving skills, with a methodical, evidence-based approach to diagnosing complex issues.
- Ability to explain complex technical concepts clearly to both technical and non-technical stakeholders.
- Ownership mindset, with accountability for the quality and operational stability of delivered systems.
If you’re interested in a specific career path or are looking to build certain skills, we want to help you succeed. You’ll have regular career, development, and performance conversations with your manager, as well as access to an online learning platform and a variety of mentoring programs to help you unlock future opportunities.
If you’re passionate about helping clients and building deep, lasting relationships, TD offers diverse career paths where you can grow your expertise and make a meaningful impact.
We're committed to your success and foster a respectful workplace where diverse perspectives are valued, everyone has fair opportunities to grow, and you can unlock your full potential to achieve your career goals. Here at TD, we hire and develop the best.
Sans ObjetNice to Have
~1 min read- Experience with durable execution or workflow engines such as Temporal, Camunda, or similar.
- Payments domain knowledge: ISO 20022, real-time payment rails (e.g., Interac, RTR, FedNow), wires, ACH/EFT, clearing and settlement, and reconciliation.
- Familiarity with performance and benchmarking tools such as JMH, Gatling, k6, or JMeter.
- Experience with resilience libraries such as Resilience4j, and with chaos or fault-injection testing.
- Observability experience with Open Telemetry, Micrometer, Grafana, or Dynatrace.
- Containerization and cloud experience with Docker, Kubernetes, including JVM tuning for container memory and CPU limits.
- Bachelor's degree in Computer Science, Software Engineering, or a related field, or equivalent practical experience.
TD Securities offers a wide range of capital markets products and services to corporate, government, and institutional clients who choose us for our innovation, execution, and experience. With more than 6,500 professionals operating out of 40 cities across the globe, we strive to make every interaction, product and experience remarkably human and refreshingly simple. Our services include underwriting and distributing new issues, providing trusted advice and industry-leading insight, extending access to global markets, and delivering integrated transaction banking solutions. In 2023, we acquired Cowen Inc., offering our clients access to a premier U.S. equities business and highly-diverse equity research franchise, while growing our strong, diversified investment bank.
Together, we are reimagining what banking can be for our clients, colleagues and communities.
Location & Eligibility
About this job
- Pay per year
- CA$125,000–CA$156,000 a year
- Who can apply
- Canada
- Posted
- 22 days ago
Listing Details
- Posted
- October 20, 2026
- First seen
- November 8, 2026
- Last seen
- November 11, 2026
Posting Health
- Days active
- 3
- Repost count
- 0
- Trust Level
- 26%
- Scored at
- November 11, 2026
Signal breakdown
Browse Similar Jobs
Stay ahead of the market
Get the latest job openings, salary trends, and hiring insights delivered to your inbox every week.
No spam. Unsubscribe at any time.