We’re looking for a:
Senior Embedded Software Engineer— Part-time
Twisthink is looking for an experienced Software Developer to design and build custom IoT edge devices on a part time basis. In this role, you will architect, implement, and deploy IoT solutions running on embedded Linux and other platforms. You will work closely with our clients, our internal design and engineering teams, and our external development partners to deliver scalable, maintainable, and resilient solutions on-time and on-budget.
We strive to create impact for our clients through our values of Excellence, Courage, and Inclusion. Join our team and help us Run for Change and Grow for Good. In our world, problems, solutions, and strategy are constantly evolving and challenging us. If you have an imaginative mindset who is fast thinking, collaborative and energetic, come join the Twisthink team!
** We are looking for individuals who would work between 12-24 hours a week,**
Apply NowEssential Responsibilities
- Provide technical expertise and leadership to the design and delivery of embedded Linux solutions that include sensors, wireless communication, battery/power management, edge analytics, real-time control, and more.
- Work closely with internal and external stakeholders to understand the client’s technical requirements and then design and specify software architectures to meet these requirements.
- Assist product owners and project managers with quoting new development projects by defining software development tasks and phase deliverables, identifying dependencies and areas of risk, and estimating development effort.
- Design and develop software within an Agile framework, using Scrum, Kanban, and other methodologies.
- Leverage your knowledge and experience to mentor the development team on best practices for software design, development, and testing.
- Lead technical status updates in your area of expertise. Communicate architectural and design rationale and present learnings and their impact on product performance during customer update calls.
Experience
and Skills
- Bachelor’s degree in CS, CE or EE with at least 5 years of embedded systems development experience.
- Ability to communicate complex technical concepts to technical and non-technical professionals at all levels of the organization.
- Familiar with developing software in a team-based environment using Git version control tools: commit cadence, branching, merging, pull requests, and code reviews.
- Competency with embedded development environments (e.g., scripting languages, command line interface, and standard utilities).
- Comprehension of C and a good understanding of object-oriented and scripting languages such as C++ and Python.
- Experience with software technologies such as: real-time operating systems, inter-process communication and coordination and design of APIs and messaging protocols.
- Experience with embedded system IO technologies: GPIO, SPI, UART, and I2C.
- Familiarity with DevOps practices: continuous integration, automated testing, remote device monitoring and management, and deployment of software updates to devices in the field.