Senior Software Engineer
Job description
About the role
PointClickCare is a leading health tech company focused on improving care through innovative software. We are seeking a Senior Software Engineer to join our team in Toronto, contributing to a platform that impacts millions of lives. This role involves developing and enhancing applications within a dynamic, AI-accelerated environment. The successful candidate will leverage their technical expertise to build robust solutions that drive efficiency and better outcomes in the healthcare sector. You will work alongside cross-functional teams to translate complex requirements into scalable and maintainable software. This position offers the opportunity to make a meaningful impact on the quality of care delivered to seniors and vulnerable populations.
Key facts
What you'll do
- Architect and implement new features using clean, efficient Java code aligned with business objectives.
- Partner with product managers and stakeholders to translate ambiguous requirements into precise software specifications.
- Design and develop scalable backend services and APIs using Spring Boot to support high-availability applications.
- Optimize database interactions and queries for Microsoft SQL Server and MySQL to ensure peak performance and reliability.
- Build and maintain robust RESTful API endpoints that enable seamless communication between services and clients.
- Write and execute unit, integration, and end-to-end tests following a strict test-driven development methodology.
- Investigate, diagnose, and resolve complex software defects in production and pre-production environments efficiently.
- Conduct thorough code reviews to ensure code quality, security, and adherence to established best practices and standards.
- Collaborate with internal engineering teams and external vendors to integrate third-party services and enhance product capabilities.
- Evaluate and adopt emerging technologies and tools to modernize the software stack and maintain a competitive edge.
- Automate repetitive tasks and workflows using scripting languages to improve developer productivity and reduce manual effort.
- Monitor application performance and system health using tools such as New Relic and DataDog to proactively address bottlenecks.
- Validate software releases through comprehensive testing cycles to guarantee stability and compliance with regulatory standards.
- Mentor junior developers by providing guidance during implementation, debugging, and software design discussions.
Requirements
- Demonstrate proven ability to write scalable, clean Java code that is well-structured and easy to maintain over time.
- Bring experience with Spring Boot to rapidly develop and deploy microservices and RESTful applications.
- Show deep understanding of relational databases such as Microsoft SQL Server or MySQL, including schema design and optimization.
- Highlight strong background in developing RESTful API endpoints with attention to versioning, security, and documentation.
- Exhibit working knowledge and enthusiasm for Test-Driven Development (TDD) to ensure high code quality and test coverage.
- Show proficiency with GIT for version control, including branching strategies, pull requests, and collaborative workflows.
- Demonstrate experience using system and performance monitoring tools such as New Relic or DataDog for observability.
- Display familiarity with automated testing frameworks like Selenium, Cypress, or RestAssured for quality assurance.
- Maintain excellent organizational, critical-thinking, and leadership abilities to manage multiple priorities effectively.
- Operate as a self-motivated professional with the capacity to deliver results with minimal oversight and strong ownership.
- Show adaptability and openness to learning new concepts, frameworks, and technologies in a fast-paced environment.
- Function as a collaborative team player who communicates clearly and respectfully with diverse stakeholders.
- Apply an analytical mindset with strong problem-solving skills to dissect complex challenges and devise efficient solutions.
- Present demonstrated experience as a skilled Engineer with a track record of successful project delivery.
- Hold a Bachelor's degree in Computer Science or a related field that provides a foundational understanding of software engineering principles.
Nice to have
- Bring experience with UI development frameworks such as Vue.js, React, or Angular to contribute to front-end initiatives.
- Possess knowledge of React, Selenium automation, and cloud platforms to support full-stack development efforts.
- Have experience with Docker, Kubernetes, and Istio for managing containerized applications and orchestration.
- Show familiarity with Ansible for infrastructure automation and configuration management.
- Demonstrate experience with Jenkins CI/CD pipelines to streamline deployment processes and ensure rapid releases.
- Understand Linux and IP networking fundamentals to troubleshoot environment and connectivity issues effectively.
- Gain experience with AWS/Azure cloud services or similar platforms to deploy and scale resilient solutions.
- Show knowledge of SAML, OAuth, and OpenID Connect for implementing secure authentication and authorization mechanisms.
- Have experience working on a SaaS product to understand multi-tenant architecture and customer-centric delivery.
- Familiarity with Service Oriented Architecture to design loosely coupled and interoperable systems.
- Knowledge of scripting languages such as Python, Bash, or Groovy to automate tasks and enhance tooling.
- On-call experience with production systems to support incident response and ensure high availability.
- Mentorship experience in a professional setting to foster growth and development within engineering teams.
- Use of Generative AI Code Assistants such as Github Copilot and knowledge of current Generative AI Model capabilities to boost productivity.
Skills & tools
- Java
- Spring Boot
- Microsoft SQL Server
- MySQL
- RESTful APIs
- GIT
- New Relic
- DataDog
- Selenium
- Cypress
- RestAssured
- Vue.js (nice to have)
- React (nice to have)
- Angular (nice to have)
- Docker (nice to have)
- Kubernetes (nice to have)
- Istio (nice to have)
- Ansible (nice to have)
- Jenkins (nice to have)
- Linux (nice to have)
- AWS (nice to have)
- Azure (nice to have)
- SAML (nice to have)
- OAuth (nice to have)
- OpenID Connect (nice to have)
- Python (nice to have)
- Bash (nice to have)
- Groovy (nice to have)
- Generative AI Code Assistants (nice to have)
Practical notes
This is a hybrid role, requiring you to reside within commutable distance to the Toronto office. You will be expected to attend weekly, bi-weekly, or monthly in-office events with your team. Benefits begin on day one and include retirement plan matching, flexible paid time off, wellness support, parental and caregiver leaves, and continuous development programs. PointClickCare uses AI tools for candidate screening and assessment.