Senior Software Engineer
- Ottawa, ON, Canada
Full-time
Applications open in a new tab.
Job details
- Job type
- Full-time
- Apply by
- Experience
- 6+ years of professional backend development, with strong recent Java experience in production systems.
- Posting language
- English
- Posted
Original job description
Role: Senior Back End Engineer
Location: Ottawa, ON
Working Structure: Hybrid - 2 days onsite a week
Veem empowers small and medium businesses who spend too much time and money dealing with inefficient financial payment systems. Our transparent, relationship-based payments model makes it easy to build trust with your vendors, contractors and customers by providing a quick and seamless payable and receivable process. We make the process even easier for these clients by supporting integration with all major accounting software including QuickBooks, NetSuite, and Xero. Backed by top investors such as Truist Ventures, Google Ventures, Goldman Sachs, Kleiner Perkins and a global syndicate of tech-forward banks based in the US, Japan, China, Australia, and the Middle East, Veem is a fast-growing financial technology company that is changing the way companies pay and get paid with multi-type payments including Blockchain.
Why Join Us?
We are committed to driving innovation in FinTech: We have disruptive technology and will continue to build new products with this in mind.
We are in a growth industry: The global financial services world is booming and projections are that the boom will grow.
We reward hard work and initiative: Everyone at Veem is eligible for a bonus to reward you for your effort and contributions.
We are growing and will continue to grow: If you want your career to grow, this is the place to be.
You want to explore new ways of doing things: You want to build on your use of AI on the job? Bring it on! So do we!
3 words…Initial Public Offering. Our goal is to go public and we are offering our valued employees options packages when they join Veem. This is your opportunity to potentially hit it big.
What You’ll Do:This is a hands-on senior engineering role. You will:- Build and evolve reliable backend services and APIs in a mature, high-trust product.
- Safely extend complex business workflows, integrate with external services, and improve code quality.
- Use your senior-level knowledge to help build highly scalable, available, and reliable services.
- Work with management and your colleagues to drive towards the vision and execution of Veem’s global payments platform.
- Work with other teams (FE, BE, QA, Product Management, etc.) in an Agile environment.
- Provide efficient technical support to the payment processing and operations teams.
- Assist in guiding more junior engineers on the team by giving them technical guidance.
- 6+ years of professional backend development, with strong recent Java experience in production systems.
- Hands-on expertise with Spring Boot: REST APIs, validation/error handling, dependency injection, Spring Security, and data access with JPA/Hibernate.
- Strong relational-database skills: SQL, schema design, transactions, query performance, and safe database migrations. MySQL experience is preferred.
- Proven experience integrating external HTTP APIs, including authentication, timeouts, retries, idempotency, webhook/event handling, and failure recovery.
- Experience working safely in a large existing codebase: understand unfamiliar flows, make appropriately scoped changes, write maintainable code, and avoid regressions.
- Strong automated testing practice. Able to write effective unit and integration tests and use tests to investigate defects.
- Sound security judgment for systems handling customer data: authorization, input validation, secrets, encryption boundaries, and safe logging of sensitive information.
- Ability to own a feature through design, implementation, code review, production release, and follow-up; communicate clearly with product, QA, and other engineers.
- Work effectively cross-functionally and able to make hard decisions
- Excellent English communications skills
Useful Additional Experience:
- Experience in fintech, payments, banking, identity verification, fraud, or another regulated domain.
- Experience modernizing an older Java/Spring application incrementally, including dependency and framework upgrades.
- Practical familiarity with containers and cloud-hosted services sufficient to debug a deployed backend service alongside platform/SRE partners.
- Groovy/Spock, QueryDSL, Gradle multi-module builds, or Node-based API-test experience.
Our Tech Stack:
- Languages & runtime: Java 11+, Gradle, Docker
- Frameworks: Spring Boot, Spring Security, Spring Data JPA, Spring Batch, Spring Session
- Persistence & data: MySQL, Redis, Elasticsearch, Hybernate, QueryDSL, Flyway
- Messaging & async: Amazon SQS / JMS
- Cloud & platform: AWS (S3, SQS, DynamoDB, Lambda, X-Ray, encryption services), New Relic
- APIs & tooling: REST, OpenAPI / Swagger, Retrofit, Jackson, Lombok
- Testing: JUnit, Mockito, Spock / Groovy
More about this job
Responsibilities
Build and maintain reliable, scalable backend services and APIs, extend payment workflows, integrate external services, and improve code quality. Collaborate across engineering, product, and operations teams, support production payment processing, and provide technical guidance to junior engineers.
Requirements
Requires at least six years of backend development experience, strong recent production Java experience, and hands-on expertise with Spring Boot, relational databases, API integrations, and automated testing. Candidates should be able to own features through release, work safely in a large codebase, apply sound security practices, and communicate effectively across teams.
Skills
- Java
- Spring Boot
- Spring Security
- REST APIs
- SQL
- MySQL
- JPA/Hibernate
- External API Integration
- Automated Testing
- Database Schema Design
- Secure Software Development
- Docker
- AWS
- Agile
- Technical Mentoring
- Payment Systems
Benefits
- Bonus
- Stock Options
Visa sponsorship
Not detected in the job text
Categories
- Software
- Technology
- Finance & Accounting
Keywords
- Java
- Spring Boot
- Spring Security
- Spring Data JPA
- Spring Batch
- Spring Session
- Gradle
- Docker
- MySQL
- Redis
- Elasticsearch
- Hibernate
- QueryDSL
- Flyway
- Amazon SQS
- JMS
- AWS
- DynamoDB
- AWS Lambda
- New Relic
- REST APIs
- OpenAPI
- Swagger
- Retrofit
- Jackson
- JUnit
- Mockito
- Spock
- FinTech
- Payment Processing