USB Software Developer
Information Technology | Calgary, AB
Job Description
Information Technology
Calgary, AB
1750
- Work as part of our Device Interface API / SDK team designing and implementing a USB host software interface to our audio devices and firmware
- Design, document and implement software to achieve architectural and functional requirements, along with performance and quality metrics. This will include unit tests and test applications to assure API / SDK functionality and quality is being achieved
- Work with the firmware, software, and project teams to recommend solutions complementing our client’s software product suite, addressing customer and market requirements
- Establish a development strategy based on overall system architecture and deliverable
- Assemble schedules and budgets for development activities
- Create and maintain design documentation
- Work with our New Products Introduction team to design and develop manufacturing test tools to verify system performance and quality
- Support and contribute to our clients evolving end-to-end product development processes by applying relevant best practices to ensure consistent delivery of quality products
- Maintain a comprehensive awareness of the technology landscape and identify opportunities for future product portfolio enhancements
USB Host Software Developer - Mandatory Skills
- A Bachelor’s degree in Computer Science or a related discipline
- 5+ years’ experience in USB host software development using C++ or C# programming languages
- Experience implementing USB 2.0 / 3.0 protocols; USB HID and Audio 1.0 / 2.0 knowledge will be considered an asset
- Experience with host / device or client / server type interfaces; delivery of APIs or SDKs will be considered an asset
- A proven ability to design and debug microcontroller and DSP-based embedded products
- Experience delivering Windows device drivers will be considered an asset
- Experience with typical software development tools, including IDEs, configuration management tools, debugging tools
- Good verbal and written communication skills
- Proven interpersonal and communications skills in a team-oriented, collaborative environment