Senior Software Engineer
- Vancouver, British Columbia, Canada
- Vancouver, British Columbia, Canada
À propos
CommunityReport and CallTriage are community facing products that empower the community member to get the help they need while simultaneously reducing the workload on public safety agencies. This team uses cutting edge technology to solve complex problems via conversation through voice, text or chat.
The CommunityReport and CallTriage teams will give you opportunities to evolve our two leading AI based products to leverage the newest and greatest offered by LLMs, NLP, Conversational, Generative and Agentic AI. Experience in AI and/or related experience in chatbots and related tech will be a strong bonus on your resume.
The RoleAs a Senior Software Engineer, you will lead the design, development, and maintenance of high-performance software applications that are critical to our business and public safety customers. You will be responsible for creating scalable, efficient, and maintainable systems, while mentoring and guiding junior engineers. To be successful in this role, you should be passionate about coding, architecture, and driving innovation, to help shape the future of our software products.
What You'll Do- Lead the design and architecture of complex, scalable software solutions, ensuring they are robust, maintainable, and optimized for performance.
- Take ownership of high-impact projects, from requirements gathering through to implementation, deployment, and ongoing support.
- Write high-quality, clean, and efficient code. Enforce coding standards, best practices, and conduct code reviews to maintain a high level of code quality across the team.
- Mentor and provide guidance to junior engineers, helping them grow in their careers and improve their coding practices. Provide constructive feedback during code reviews.
- Work closely with product managers, designers, and other engineering teams to ensure that software features are aligned with business objectives and customer needs.
- Focus on optimizing application performance, ensuring that the software scales effectively under increased loads and performs reliably in production.
- Lead efforts to resolve complex technical issues and ensure that software is bug-free and meets business requirements.
- Stay up to date with the latest industry trends, tools, and technologies. Drive innovation and suggest improvements to the development process, architecture, and product features.
- Participate in agile processes, including sprint planning, daily stand-ups, and retrospectives. Help the team break down complex tasks into achievable milestones.
- Ensure that code, system designs, and technical processes are well-documented for knowledge sharing and future reference.
- Performs other related duties as assigned to support team objectives, departmental needs, and overall organizational priorities.
- Degree in Computer Science, Software Engineering, or a related field, or equivalent industry experience and training.
- 6 years of professional software development experience.
- Advanced proficiency in one or more programming languages such as C#, Python, JavaScript ), or similar.
- Deep understanding of software architecture, design patterns, and principles. Experience in designing scalable and distributed systems.
- Expertise in both front-end (e.g., React, Vue) and back-end (e.g., ) development, with a focus on building full-stack applications.
- Strong knowledge of relational and NoSQL databases (e.g., MySQL, PostgreSQL, MongoDB, MS SQL Server).
- Experience with cloud services such as AWS or Azure, and deploying scalable applications in the cloud.
- Experience with DevOps and CI/CD practices, including continuous integration, continuous deployment, and tools like Docker, Kubernetes, Jenkins, and Terraform.
- Extensive experience working with multiple development practices, with a deep understanding of various principles (Scrum, Kanban, etc.).
- Experience with automated testing, test-driven development (TDD), and unit testing frameworks.
- Strong leadership, communication, and collaboration skills. Ability to work cross-functionally with both technical and non-technical stakeholders.
- Working knowledge of Microservices, SOA, Monolith, REST, RPC, SQL, NoSQL, etc.
- Proficiency in multiple programming languages such as Java, Python, C , JavaScript, or C# along with multiple frameworks.
- Expertise in optimizing and fine-tuning large-scale applications for performance, scalability, and high availability.
- Previous experience in mentoring or coaching junior engineers and fostering a positive, collaborative team culture.
- Understanding of security best practices and experience implementing security measures in software and DevOps processes.
- Experience in industries such as finance, healthcare, public safety or government.
- Experience with leveraging AI tooling in development workflows.
This position requires security clearances due to the nature of our work with public safety agencies. Candidates must be legally authorized to work in Canada and must successfully obtain and maintain a Reliability security clearance from the Government of Canada. Additionally, candidates must comply with the FBI's Criminal Justice Information Services (CJIS) Security Policy and pass a comprehensive, fingerprint-based background check. Please note that specific customer contracts may impose additional security verification requirements. Obtaining and maintaining all required security clearances is a condition of employment. For more information, please visit Public Services and Procurement Canada for Reliability clearance details and the FBI's CJIS Security Policy Resource Center for CJIS requirements
Compétences linguistiques
- English
Cette offre provient d’une plateforme partenaire de TieTalent. Cliquez sur « Postuler maintenant » pour soumettre votre candidature directement sur leur site.