Principal/Staff Back End Engineer
Principal/Staff Back End Engineer
This job allows you to work remotely
Reporting to the Director of Software Development, we are looking to add a Principal and a Staff Back End Engineer(or two) to our Platform Development team. This is an impactful, hands-on development role for our team.
We’re working on new features and infrastructure improvements helping Canada’s largest enterprises design and deploy delightful, modern digital workflows. Recent features we’ve shipped include new API-powered components, Google Maps-integration, Single Sign-on for enhanced security, eSignatures functionality, and an Enterprise-grade secure data handling service, just to name a few projects we’ve worked on this year!
This is an opportunity to help optimize the performance, scalability, maintainability and functionality of our SaaS platform. We are looking for someone who is solutions-driven, experienced in building robust products and passionate about being a team player at a technical product organization. If you know how to build highly scalable, secure and extensible platforms and applications, let’s talk!
Responsibilities/Accountabilities:•Building - this is an opportunity to build new and exciting functionality to our platform, you will gather and review high-level business requirements, architect and design new features and services
•Improving - optimize performance, scalability, maintainability and functionality for our SaaS platform by evaluating and recommending tools, technologies and processes
•Digging deep - dive in to analyze and resolve programming and design challenges across a wide variety of areas, including the front and back end code base, databases, cache and deployment infrastructure
•Collaborating - you will communicate and collaborate with team members and other departments in an Agile environment to ensure sprint planning objectives are met and that the project vision is carried out
•Mentoring - you will mentor other back-end developers through your advanced technical knowledge and competency and you will enjoy being a team leader (or working towards becoming one) and apply best practices to improve efficiency and collaboration
Must Have Skills:
•Bachelor’s in Computer Science, Software Engineering, Web Development, a related field or comparable professional experience
•excellent verbal and written communication skills and you can effectively communicate and collaborate cross-functionally with both technical and non-technical audiences
•can adapt quickly, innovate solutions and embrace the new while accepting the ambiguous - you want to be part of a growing and collaborative team where your voice will be heard
•9+ years’ experience in software engineering building multiple distributed systems with varying architectural, scalability and security considerations
•2+ years of experience providing technical leadership in design and architecture, in addition to mentoring and supporting other engineers
•deep technical knowledge of web development tooling & trends, and can be actively involved in technical discussions in system design and front end and back end development
Ideal Candidates Have Experience/Knowledge many of the Following Areas:•Front end frameworks & libraries such as AngularJS/Angular, React and Vue.
•Back end: Building applications using Node.js, Express with REST APIs.
•Microservices and/or Service Oriented Architecture (developing, debugging, monitoring).
•User authentication/authorization, including SSO, OAuth2, SAML, OpenID, etc.
•MongoDB and NoSQL databases.
•Redis or in-memory cache data structures.
•Deployment technologies, including Docker and AWS.
•CI/CD systems, such as Jenkins, Shippable, CircleCI or others.
•Web application security standards such as OWASP Top 10.
•Experience reviewing and resolving security, privacy and pentest findings.
•You are a strong proponent of unit testing and automation testing, and have built extensive coverage using tools such as Mocha, Chai, Puppeteer, Cypress, etc.
Nice to Have Skills:
MongoDB Professional Certification(s).