- Architect, develop, and debug application software for embedded Linux devices using Python.
- Create software that communicates with other devices through a variety of network and RF protocols.
- Research and evaluate new technologies and tools.
- Be a technical representative on specific projects.
- Create and run software unit tests and participate in peer reviews.
- Work effectively in a team of engineers, both learning from, and mentoring others.
- BSCS or equivalent experience.
- Competence in one or more major OO languages such as C++, C#, Python, or Java.
- Strong experience with Linux development and debugging.
- Experience with software architecture, multi-threading, networking (TCP/IP, UDP), frameworks, 3rd party library integration, etc.
- Passionate about gadgets and smart devices.
- Strong analytical and problem solving skills.
- Excellent communication skills.
- The individual must be well organized, methodical, and detail-oriented. A self-starter who is capable of identifying problems, taking initiative to propose solutions, and successfully executing plans.