Our Client is seeking a Senior API Software Developer with strong experience in Java, Spring Boot, REST API development, enterprise integration, microservices and Azure technologies.
The successful candidate will design, develop, test and support secure, scalable APIs and integration solutions for a large public-sector technology environment. This role requires strong hands-on development experience, excellent troubleshooting skills and the ability to work onsite in Toronto five days per week.
Key Responsibilities - Design, build and consume secure, scalable RESTful APIs using Java and Spring Boot.
- Develop detailed API specifications, including endpoints, request and response models, authentication and error handling.
- Build modular microservices with clear inter-service communication.
- Develop enterprise integration solutions using Spring Integration.
- Transform and route data across JSON, XML and CSV formats.
- Design and optimize relational database schemas using SQL Server or Oracle.
- Implement messaging, asynchronous processing and event-driven solutions using Azure services.
- Apply authentication and authorization standards, including OAuth2, JWT, SAML and OpenID.
- Write unit, API and integration tests using tools such as JUnit, Mockito and Testcontainers.
- Containerize and deploy applications using Docker, Kubernetes, OpenShift or Azure-based environments.
- Implement logging and monitoring using tools such as Prometheus, Grafana, ELK, Logstash or Splunk.
- Conduct code reviews, provide technical guidance and mentor junior developers.
- Troubleshoot production issues and support ongoing application operations.
- Prepare technical design documents, deployment instructions and operational documentation.
Mandatory Qualifications - 8+ years of software development experience.
- Extensive experience designing, building, consuming, documenting and testing REST APIs.
- Strong hands-on experience with Java, Spring Boot and Spring Integration.
- Strong understanding of microservices and highly available distributed systems.
- Experience with Azure services, Azure Service Bus, messaging queues and event-driven architecture.
- Experience with asynchronous communication and multithreaded application development.
- Strong SQL skills with SQL Server or Oracle.
- Experience implementing OAuth2, JWT, SAML, OpenID, authentication, authorization and encryption.
- Experience with data mapping, normalization and transformation.
- Ability to transform data across JSON, XML and CSV.
- Strong understanding of integration patterns and enterprise integration best practices.
Additional Technical Skills - Object-oriented and functional programming using modern Java features.
- JMS, AMQP, REST and message-oriented middleware.
- XML, XSLT and XPath.
- Azure Event Hubs and Azure Service Bus.
- Docker, Kubernetes, Helm, OpenShift and containerized environments.
- Automated unit, API and integration testing.
- OWASP security practices and web-services security standards.
- Agile delivery experience using Scrum or Kanban.
- Strong debugging, analytical and production-support skills.