What you bring to us...
You will have senior-level professional experience and a passion for solving complex problems. You bring excellent debugging skills and will be comfortable working through the entire embedded stack from interfacing to low level drivers, RTOS usage, and implementing simple yet elegant applications. You will bring:
1 Extensive knowledge with embedded software
2 Knowledge of Real-Time Operating systems
3 Proficient knowledge of interfacing to various sensors and peripherals
4 Experience with new board bring-up
5 Familiarity with laboratory tools such as oscilloscopes, power supplies and multimeters
6 Experience shipping products and exposure to full software development cycle
7 Proven collaborative skills to work with cross-disciplinary teams in developing products
8 Effective verbal, written and interpersonal communication skills
9 Bachelor of Science or Master of Science in Computer Engineering, Computer Science, Electrical Engineering, or related discipline.
10 At least 5 Years of embedded software experience.
11 Excellent spoken and written English capability for frequent customer-facing communication
Your technical skills include:
1BLE, WiFi or Mesh Networks (802.15.4 /Thread)
2 Knowledge of typical networking stack and architectural principles: Ethernet, TCP/IP suite, HTTP, web services
3 Knowledge of data storage systems (e.g., eMMC, raw NAND, etc.)
4 Working experience with Linux bring-up on embedded custom hardware, e.g., U-Boot porting, device tree configuration, driver and kernel configuration, etc.
5 Experience with developing Linux device drivers
6 Experience with Bare Metal programming
7 GNU ARM Toolchain (GCC, GDB, Make/CMake)
8 Proficiency in C / C++ (knowledge of C++11 a bonus)
9 Working knowledge of typical hardware interfaces: I2C, SPI, GPIO, UART, etc.