Toronto, Toronto, Canada
Maarut
Full-time
Scope:
- A senior API Software Developer with 8 years of experience will be responsible for creating and using APIs to translate functional specifications into working and tested applications. This includes developing detailed programming specifications, user interface designs, prototypes, writing and/or generating code, compiling data driven programs, conducting unit tests and debugging code.
Assignment Deliverables:
- Detailed design and specification documents for RESTful APIs, including endpoints, request/response models, authentication, and error handling.
- Clean, scalable, and secure REST APIs built using Java and Spring Boot, adhering to best practices and company standards.
- Modular and decoupled microservices, designed and deployed independently, with clear inter-service communication protocols.
- Using APIs to develop application based on the business requirement to transform and route data.
- Comprehensive test coverage using tools like JUnit, Mockito, or Test Containers to ensure code reliability and prevent regressions.
- Efficient relational database schemas designed and implemented to support API data storage and retrieval.
- Profiled and optimized APIs for response time, memory usage, and throughput, ensuring high performance under load.
- Secure API calls with proper authentication (e.g., OAuth2, JWT), authorization, input validation, and protection against common vulnerabilities (OWASP).
- Dockized applications with configuration files, docker-compose scripts, and Kubernetes manifests (if applicable) for smooth deployment.
- Integrated monitoring (e.g., Prometheus, Grafana) and logging (e.g., ELK stack, Logstash, or Splunk) for operational visibility.
- Produce clear documentation for developed systems such as design, deployment instructions, and operational guides.
- Regular code reviews, feedback sessions, and mentorship to junior developers, ensuring code quality and knowledge sharing.
- Weekly or sprint-based status updates on development progress, blockers, and delivered functionalities.
- Timely resolution of production issues, regression fixes, and performance improvements based on user feedback and testing.
- Available for any on-call on weekend for production issues.
- Support – Assist with troubleshooting production issues (24/7) and support day-to-day operations
Requirements
Experience and Skill Set Requirements:
Must Haves:
- Extensive experience in designing, building, and consuming REST APIs, including API documentation and testing, as well as in-depth knowledge of integration patterns and best practices, with experience designing and building integration solutions using Spring Integration.
- In-depth knowledge of microservice architecture and experience building scalable, highly available systems using various Azure Services, including hands-on experience with messaging queuing, event-driven architecture, and asynchronous communication/multi-threading.
- Strong skills in SQL and experience working with relational databases such as SQL Server or Oracle.
- Knowledge of integration with OAuth2, JWT, SAML, and related authentication/authorization technologies.
Skill Set Requirements:
Mandatory Requirements:
- Extensive experience in designing, building, and consuming REST APIs, including API documentation and testing, as well as in-depth knowledge of integration patterns and best practices, with experience designing and building integration solutions using Spring Integration.
- In-depth knowledge of microservice architecture and experience building scalable, highly available systems using various Azure Services, including hands-on experience with messaging queuing, event-driven architecture, and asynchronous communication/multi-threading.
- Strong skills in SQL and experience working with relational databases such as SQL Server or Oracle.
- Knowledge of integration with OAuth2, JWT, SAML, and related authentication/authorization technologies.
- Knowledge of data transformation techniques, such as mapping and normalization, with experience applying them in a Spring Integration context.
- Ability to transform data between different formats, including JSON, XML, and CSV.
Nice-to-Have R