Senior Full Stack Software Developer
Are you ready to lead innovation and help shape the future of ENGIN™? At Engineered Intelligence, we empower organizations with grid-aware asset management and planning solutions that enable utilities to make smarter, faster, and more defensible infrastructure decisions.
As a Senior Full Stack Developer, you’ll be instrumental in designing, developing, and delivering impactful products that provide real-world value—driving both technological advancement and a strong, collaborative team culture.
We’re a passionate, distributed team that values technical excellence, collaboration, and continuous learning. If you enjoy solving complex challenges, mentoring others, and influencing product direction, we want to meet you.
The Senior Full Stack Developer will lead the design, development, and delivery of complex software features and systems across our technology stack—Angular (frontend), Java/Scala/Node.js (backend), and MongoDB/PostgreSQL (databases).
In this role, you will act as a technical leader and mentor, guiding engineering best practices, shaping architectural decisions, and ensuring solutions are robust, scalable, and secure. You will work closely with stakeholders across the business, influencing technical decision-making and supporting team growth.
- Architect, design, and implement complex, high-quality software features and systems across the full stack (backend and frontend).
- Lead the development, testing, and deployment of scalable backend solutions using Java, Scala, Node.js, MongoDB, and PostgreSQL, as well as frontend solutions using Angular and TypeScript.
- Champion technical standards including in-code documentation, code reviews, and quality assurance practices.
- Identify and prioritize technical debt, ensuring sustainable and maintainable codebases.
- Mentor intermediate, junior, and student developers, fostering a culture of knowledge sharing.
- Collaborate on solution architecture to ensure performance, security, and maintainability.
- Contribute to technical solutioning for new development initiatives.
- Understand and apply architectural patterns, business logic, and user interaction principles within our software products.
- Participate in peer reviews, pull request evaluations, and technical knowledge sharing.
- Support software implementation processes, including client delivery as needed.
- Follow organizational policies for acceptable use of systems and IT resources.
- Submit and justify system change requests through proper channels.
- Bachelor’s degree in Software Engineering, Computer Science, or equivalent experience.
- 5+ years of experience developing dynamic web applications in a professional environment.
- Proficiency in backend development using Java and frameworks such as Spring.
- Experience with high-performance computational backend workloads, ideally using Scala and Apache Spark.
- Expertise in relational databases (e.g., PostgreSQL), with strong SQL query optimization skills.
- Knowledge or experience with Node.js / express.js and NoSQL databases.
- Proficiency with version control systems (Git).
- Experience building CI/CD pipelines using Jenkins.
- Strong self-starter mentality with the ability to work independently and collaboratively on complex systems.
- Experience with spatial databases and query development.
- Understanding of electrical engineering concepts and terminology.
- Exposure to machine learning tools and workloads.
- Experience in multi-tenant product environments, including database migrations and data management.
- Scala, Java, Spring framework, Apache Spark, PostgreSQL, Node.JS, Angular2+, MongoDB, Bitbucket, AWS hosting with Docker, Jenkins, Microsoft suite (Office 365, Teams)
- Adhering to policies that govern acceptable use of organizational systems.
- Using the organization-provided IT resources for defined purposes only.
- Submitting and justifying system change requests to the information owner/system owner or through. the organization’s formal configuration management process.
- Fully remote work environment with offices in Calgary and Toronto for those who prefer hybrid.
- Flexible hours with core availability between 10:00 AM – 3:00 PM.
- Autonomy with broad responsibilities, opportunities for advancement, and cross-disciplinary exposure.
- The opportunity to join a growing company in the early stages and make a lasting impact.
- Supportive, collaborative, and interactive remote workplace culture.
- Paid time off, benefits, and a health spending account.