Build efficient and reusable abstractions and components;
Collaborate with product managers, designers, QA and other engineers;
Participate in all aspects of an iterative software development process, includes scoping, detailed design, effort estimation, coding, testing, debugging, maintenance and support;
Implementing designs with an extreme attention to detail;
Reviews, designs, and implements plans to develop less skilled team members;
Reviews the design and code of others and takes necessary corrective actions if needed.
Minimum a BS in Engineering, Computer Science, or a related discipline;
5+ years of experience in software and Linux based firmware development;
5+ years of C++ in embedded SW development;
Knowledge of networking protocols (TCP/IP, UDP, DHCP, ARP,Http, Https, DHCP, DNS);
Experience in IPv4/IPv6;
Extensive experience in multi-threading systems;
Quickly learn and implement new technologies;
Ability to work in a fast-paced environment and with small and/or remote teams;
Fast learner and the mindset of an innovator to embrace & tackle any complex problem.