Senior Software Engineer

2 days ago

Toronto, ON, Canada Thomson Reuters Full-time $105,000 - $155,000 Contract

Job Description

We are looking for a hands-on Senior Software Engineer to design, build, and operate scalable cloud-native backend services and distributed applications. You will work primarily with Java, Spring Boot, AWS, and PostgreSQL, partnering with Product, Architecture, DevOps, Security, and other engineering teams to deliver reliable, maintainable solutions from design through production.

In this role, you will have meaningful ownership across the software development lifecycle, contribute to technical design and architecture decisions, and help improve the scalability, reliability, performance, and quality of our platforms. You will also provide technical guidance and mentoring to other engineers while promoting strong engineering practices and end-to-end ownership.

Key Responsibilities

  • Design, develop, test, deploy, and support scalable backend services, REST APIs, and microservices using Java, Spring Boot, AWS, and PostgreSQL.
  • Build and evolve distributed systems using asynchronous messaging, event-driven architecture, service-to-service communication, caching, resiliency, and fault-tolerant design patterns.
  • Own technical solutions end to end, including requirements analysis, solution design, implementation, automated testing, deployment, monitoring, troubleshooting, and production support.
  • Design and optimize PostgreSQL databases, including schema design, migrations, indexing, query tuning, data integrity, concurrency, and performance optimization.
  • Partner with Product, Architecture, DevOps, Security, and other cross-functional teams to translate business requirements into scalable and maintainable technical solutions.
  • Drive engineering quality through code reviews, automated testing, observability, secure development practices, performance optimization, and continuous improvement.
  • Provide technical guidance, mentoring, and knowledge sharing to engineers while promoting a strong culture of accountability, collaboration, and engineering excellence.

Required Qualifications

  • Professional software engineering experience building and supporting production backend applications.
  • Strong hands-on experience with Java and Spring Boot.
  • Strong experience developing and deploying applications on AWS Cloud.
  • Strong experience with PostgreSQL, including database design, SQL development, indexing, and query optimization.
  • Experience designing and developing REST APIs, microservices, and distributed systems.
  • Experience owning software throughout the full development lifecycle, including development, automated testing, deployment, monitoring, troubleshooting, and production support.
  • Demonstrated ability to solve complex technical problems independently and make practical engineering decisions while balancing scalability, reliability, maintainability, security, and delivery needs.
  • Strong communication and collaboration skills, with the ability to explain technical decisions, risks, dependencies, and trade-offs to both technical and non-technical stakeholders.
  • Experience providing technical guidance, mentoring, code reviews, or knowledge sharing within an engineering team.

Preferred Qualifications

  • Experience with Python, including FastAPI or asynchronous service and API development.
  • Experience with distributed messaging and event-driven technologies such as AWS SQS, SNS, Apache Kafka, and Redis.
  • Experience with asynchronous processing, publish/subscribe patterns, caching, resiliency, and fault-tolerant distributed architectures.
  • Experience with containerization, orchestration, and other cloud-native application patterns.
  • Experience with CI/CD, Infrastructure as Code, GitHub Actions, or Terraform.
  • Experience with observability practices, including application logging, metrics, monitoring, alerting, distributed tracing, and production issue analysis.
  • Experience with performance engineering, including load testing, profiling, capacity planning, scalability testing, and bottleneck analysis.
  • Experience evaluating or using AI-assisted engineering tools or AI capabilities for relevant software development use cases.

What’s in it For You?

  • Hybrid Work Model: We’ve adopted a flexible hybrid working environment for our office-based roles while delivering a seamless experience that is digitally and physically connected.
  • Flexibility & Work-Life Balance: Flex My Way is a set of supportive workplace policies designed to help manage personal and professional responsibilities, whether caring for family, giving back to the community, or finding time to refresh and reset. This builds upon our flexible work arrangements, including work from anywhere for up to 8 weeks per year, empowering employees t