We are the leading provider of Academic-Dental software solutions in North America with clients located around the world. Our products enable education institutions to train the next generation of dental professions to deliver dental care to a variety of markets, including the underserved and uninsured. Our core on-premises product is powering over 90% of the market and our cloud product is targeted for double-digit growth over the next 12 months. To continue building on our success and achieve those goals, we are looking for a Senior Software Engineer to join our axiUm team, reporting to the Software Engineering Manager. The primary responsibility of this role is to build our market-leading axiUm enterprise solution, along with our suite of services. You will be engaged throughout all phases of the software development life cycle and use your drive for technology and quality to help us exceed customer expectations. You are passionate about technology and look forward to a role that will have you work as part of a cross-functional development team with full ownership for the entire product. At Exan, you will be part of a culture that embraces ownership, transparency, collaboration and one that provides you with the opportunity to directly impact our companys success. We foster an environment that is inclusive and supportive of personal and professional growth. As part of the team at Exan, you will contribute to a culture that embraces open communication and ownership, where every team member has an opportunity to directly impact success, within a high performing environment. Our Engineering Principles Our behavioral principles are the bedrock that our Engineering culture is built on: Customer-centricity in everything we do. Data drives us and we are curious about measuring things. Empowered to make decisions and do what needs to be done. Actively engaging in discussions to get diverse input on solutions. Communicating often and with purpose. Responsibilities Design and implement software that meets functional and non-functional requirements (scalability, security, performance, etc.). Develop code that reflects an expert understanding of object-oriented design, clean code, clean architecture and solid engineering principles. Provide technical guidance and expertise to the development team, contributing to code quality efforts, software architecture discussions, and application design. Ensure seamless integration with existing infrastructure, third-party APIs, and legacy systems. Design and maintain the database architecture, data models, and schemas for new and existing applications. Write complex SQL queries, stored procedures, and triggers to retrieve and manipulate data efficiently and optimize performance by tuning existing functionality etc. Create and maintain comprehensive documentation of implemented features. Participate in an Agile environment collaborating with Product Managers, QA and Documentation to ship high-quality software on time. Stay updated with emerging technologies and propose adoption where relevant to enhance the systems capabilities. Mentor junior engineers to enhance their technical skills and play a crucial role in the teams successful delivery of projects and initiatives. Availability This is a hybrid role, with one day in the office per week, to facilitate brainstorming and team building. Our office is located across from Guildford Mall, in Surrey, BC Qualifications Bachelor’s or Master’s degree in Computer Science, Computer Engineering or equivalent. Minimum 7 years of experience in developing complex, enterprise-level software solutions in an Agile environment. Minimum 3 years of experience working with modern software architecture, frameworks, and tech stacks. Proficiency in programming languages such as Java, C#, Python, or similar. Experience with .NET Standard, .NET Core and .NET 5.0 or superior. Experience with scaled web application development and service-oriented architecture. Experience with Oracle, Postgres, and NoSQL databases. Expertise in writing complex SQL queries, stored procedures, and triggers. Excellent written and verbal communication skills. Bonus qualifications Experience with DevOps tools and practices. Experience writing Win32 C/C++ applications with OWLNext, MFC or similar. Dental or Healthcare industry knowledge is an asset but not mandatory. Experience in technical leadership. Our Interview Process Our interview process is quick and focused on meeting people you will be working and collaborating with. We encourage you to ask a lot of questions and want you to learn as much as possible about the role and the work you would be doing at Exan Interview with recruiter Short online behavioral and coding assessment Technical interview with engineering leader Team interview with hiring manager & engineering team Our benefits also include: 3% RRSP matching Comprehensive health benefits plan, including 100% drug coverage 3-week paid vacation, growing up to 5 weeks with tenure Unlimited paid flex days Paid Birthday off The posted range for this position is between CAD $116,000 - CAD $141,000 which is the expected starting base salary range for an employee who is new to the role to experienced in the role. Many factors go into determining employee pay within the posted range including prior experience, training, current skills, certifications & education etc.