
Software Developer - Full Stack
Job description
About the role
Solace is looking for a Software Developer
Full Stack to become part of their growing team in Ottawa, Ontario. This role centers on building and maintaining both the front-end and back-end components of the company's messaging and connectivity platforms that serve a wide range of industries. The developer will work closely with cross-functional teams across engineering, product, and design to deliver reliable, scalable software solutions that meet user needs and business objectives. The position is a full-time opportunity based in the Ottawa office, offering the chance to contribute to meaningful technology that connects systems and enables real-time data exchange across distributed environments.
Key facts
What you'll do
- Design and develop user-facing features using modern front-end frameworks and contemporary web technologies.
- Build and maintain server-side logic, RESTful APIs, and microservices that support the core messaging platform.
- Write clean, well-structured, and maintainable code following established coding standards and engineering best practices.
- Collaborate with product managers and designers to translate business requirements into clear technical specifications.
- Participate actively in code reviews to ensure code quality, share knowledge, and uphold team standards.
- Troubleshoot and debug production issues quickly to maintain system reliability, uptime, and overall performance.
- Contribute to database schema design and query optimization for efficient data storage and retrieval operations.
- Implement automated testing strategies including unit and integration tests to improve software quality and reduce regression risks.
- Document technical designs, architecture decisions, and operational procedures thoroughly for future reference and team knowledge.
- Stay current with industry trends and evaluate new tools and frameworks that could improve development workflows.
- Work with DevOps practices and tooling to support continuous integration and continuous deployment pipelines.
- Assist in mentoring junior developers and fostering a collaborative, knowledge-sharing engineering culture within the team.
- Architect and prototype new features from initial concept through to production deployment in a fast-paced environment.
- Optimize application performance and responsiveness to ensure a smooth and efficient user experience across all devices.
Requirements
- Bachelor's degree in computer science, software engineering, or a related technical discipline from an accredited institution.
- Demonstrated experience developing full-stack applications with both front-end and back-end technologies in a professional setting.
- Proficiency in at least one modern programming language such as JavaScript, Python, or Java with practical application.
- Solid familiarity with RESTful API design principles and implementation for building web-based services and integrations.
- Understanding of relational and non-relational database systems and the ability to select the appropriate solution.
- Hands-on experience with version control systems, particularly Git, in a collaborative team development environment.
- Strong analytical problem-solving skills and the ability to work independently on complex technical challenges.
- Comfort working within agile development methodologies and actively participating in iterative delivery and sprint cycles.
- Effective communication skills for translating technical concepts to both engineering and non-engineering stakeholders clearly.
- Experience with software design patterns and clean code principles to ensure long-term maintainability of the codebase.
Nice to have
- Prior experience working with event-driven architectures or enterprise messaging systems in a production environment.
- Knowledge of containerization technologies such as Docker and container orchestration tools like Kubernetes for deployment.
- Exposure to cloud platforms including AWS, Azure, or Google Cloud Platform for scalable infrastructure management.
- Contributions to open-source projects or a strong personal portfolio demonstrating practical software development skills and initiative.
- Familiarity with CI/CD pipelines and automated testing frameworks integrated into a modern development workflow.
Skills & tools
- JavaScript or TypeScript for front-end and back-end application development across the full technology stack.
- HTML, CSS, and modern front-end frameworks such as React or Angular for building responsive user interfaces.
- Node.js, Python, or Java for server-side application development, scripting, and backend service implementation.
- SQL and NoSQL databases including PostgreSQL, MySQL, or MongoDB for diverse data storage requirements.
- Git for source code management, branching strategies, and collaborative development workflows across distributed teams.
- Docker for containerization, local development environment setup, and consistent deployment across different machines.
- Familiarity with REST and GraphQL API patterns for designing and consuming web service endpoints.
Practical notes
- This role is based in the Ottawa, Ontario office and requires regular on-site presence during business hours.
- The hiring process may include technical assessments, coding challenges, and multiple interview rounds with various team members.
- Solace offers a collaborative work environment with opportunities for professional growth, skill development, and career advancement.
- Applicants should be prepared to discuss past projects and demonstrate their full-stack development capabilities during interviews.
- The team values diversity, inclusion, and open communication as foundational principles of the engineering culture at Solace.
About the company
Healthcare in the U. S. is fundamentally broken.