Job description
Job Description
\n
The Firmware Developer will develop and support our industry-leading traffic products. The successful candidate will help create products that allow the visually impaired to safely experience the world on their own terms.
\n
\n
Job Duties: Include but are not limited to the following:
\n
- \n
- Maintain and enhance embedded software for existing product lines. \n
- Participate in the embedded software system design cycle from requirements through launch and beyond. \n
- Design, develop, code, test, and debug embedded software. \n
- Integrate, verify, and validate new product designs and design changes. \n
- Perform design and code reviews. \n
- Interface with a cross-functional engineering team. \n
- Support the Tech Support team with intimate product knowledge. \n
- Contribute to a fun and innovative work environment. \n
\n
\nRequirements\n
\n
Education : Bachelor’s Degree in Computer Science, Electrical, Electronic, or Computer Engineering
\n
- \n
- 5+ years of experience \n
\n
Technical Experience & Skills:
\n
- \n
- Strong understanding of embedded software development best practices. \n
- Familiarity with various ARM architectures (e.g. Cortex M4, M7, etc.). \n
- Familiarity with security basics (e.g. AES, TRNG, security certificates, etc.). \n
- Experience with common interfaces, such as SPI, I2C, I2S, UART, USB, Bluetooth LE, Wi-Fi, and Ethernet. \n
- Familiarity with networking concepts and protocols (UDP, TCP, HTTP, REST, CoAP). \n
- Ability to read schematics to troubleshoot, debug and bring up new hardware using oscilloscopes, logic analyzers, protocol analyzers and in-circuit emulators. \n
- Mastery of C language programming as it pertains to an embedded environment. \n
- Familiarity with OOP design principles, especially abstraction and encapsulation. \n
- Real time development experience with and without an RTOS. \n
- Experience programing peripheral hardware at the register level and developing peripheral driver code. \n
- Strong firmware debugging skills. \n
- Experience with version control systems like git. \n
- Familiarity with Linux. \n
\n
Soft Skills:
\n
- \n
- Strong interpersonal, analytical, organizational and follow-up skills. \n
- Solid problem-solving skills. Highly technical, quickly grasping how things work. \n
- Presents technical concepts, ideas, and information in terms that both engineers and non-engineers can understand. \n
- Motivated by continuous learning and development. \n
- Functions well in a small company/startup environment. (High visibility, accountability, and development velocity) \n
- Ability to work independently with minimal supervision, and collaboratively with a cross functional team. \n
- Disciplined engineering approach. \n
- Differentiates value added activities from waste. \n
- Demonstrates systems thinking. \n
\n
Benefits & Perks:
\n
- \n
- Annual Bonus Program \n
- Robust Health and Dental plan and Employee Assistance Program for you and your dependents. \n
- TELUS Health Virtual Healthcare \n
- Health Spending Account \n
- Health & Wellness subsidy \n
- 3 weeks’ vacation to start, 4 weeks at 5-years. \n
- Professional development and training \n
- Secure bike cage \n
- Shower facilities. \n
- Hybrid remote work program \n
- Community support and regular social activities! \n
- Robust recycling program (bring in municipal limited items from home) \n
- Weekly Fruit, coffees, and local tea's \n
- Free and ample parking \n
\n
\nSalary Description\n
\n$74,000 - $110,000\n