Senior Software Engineer
Corvus is in search of a dynamic senior software engineer who is
comfortable across the spectrum of our software development projects which
includes embedded firmware to big data analysis tools to full stack development.
If you enjoy the challenge of looking through schematics to determine what I/O
needs to be toggled to communicate with an EEPROM over I2C one day and writing
Python scripts to analyze gigabytes of data to look for sensor performance
issues another day, you are the person we are looking for. As a senior software
engineer, you will also be responsible for mentoring our junior developers,
assisting in refining quality processes and security practices and being a
technical resource for other teams in Engineering and other groups in Corvus
Reporting to the software team lead, you will be a member of a
highly talented group of software and firmware engineers working on adding
value to our energy storage systems on the software end of things. You think on
a systems-level and are capable of architecting software with considerations
for the various use-cases, maintainability, scalability and usability concerns
which all ultimately help to increase customer satisfaction.
- Design and refine software architecture for our software products.
- Implement improvements, feature enhancements, and bug fixes as
requested by stakeholders such as customer service.
- Implement test plans and regression tests to verify software and
- Collaborate with customer service, manufacturing, and applications
engineering to identify and diagnose software and firmware issues.
- Participate in all aspects of the SDLC for new and existing
- Deploy firmware and software upgrades.
- Report on issues and their resolutions to non-technical staff.
- Promoting knowledge transfer through documentation and
- Mentor junior developers to promote their career development and
act as an experienced technical resource with the aim to improve the quality of
- Provide input and assist with improving team processes and
- Team player with strong verbal and written communication skills.
- BASc/BSc in engineering or computer science, or engineering
technologist with equivalent experience
- 7+ years’ experience in software development with 4+ years’
experience in embedded software development.
- Proficient in C and scripting languages such as Python.
- Experience with some or all of the following is an asset:
HTML/CSS/JS, AWS or Azure, RTOS’s, SQL/NoSQL databases, embedded Linux,
functional programming languages.
- Outstanding troubleshooting skills acquired by experience with
- Experience with source code control systems such as Git and
development processes and tools such as CI and JIRA.
- Practical working knowledge of software security and security
development lifecycle is a plus.
- Experience working on small to medium size software development
teams as the lead developer driving architecture and other design decisions.
- Should be able to travel internationally on occasion (1-2 weeks