Embedded Software Engineer
Description
Ayla Networks is redefining the way brands, enterprises and service providers can develop, monetize and support connected products for the Internet of Things (IoT) in a way that’s open, scalable, and economical. Ayla provides the industry’s first Agile IoT Platform, an end-to-end software fabric running across devices, cloud, and apps to create secure connectivity, data analytics, and feature-rich customer experiences.
We are looking for an exceptional senior firmware developer with a passion for IoT. You will gain exposure as well as hands on knowledge of Ayla’s end to end IoT platform, embedded and Linux domains and understand the complete enterprise flow with the cloud platform and mobile applications.
What You Will Be Doing
- Work as part of a team that creates embedded firmware products that enable our customers to connect their devices to Ayla’s IoT Cloud Platform.
- Design, implement, enhance and maintain firmware that provides core device hardware command and control, and communicates with the Cloud Platform and with Ayla’s mobile applications using secure and scalable network protocols.
- Enable new connectivity solutions using technologies such as Wi-Fi (802.11), Cellular, Bluetooth, Thread, and Matter.
- Perform manual and automated testing to verify device firmware against product requirements
- Make significant contributions as an individual contributor, with a high degree of independence and ownership of your work.
- Communicate with customers to gather requirements, specify product behavior, and identify, track and resolve issues.
- Opportunities to lead projects, and to supervise and mentor others
- Play a significant and important role in the company’s success
Desired Skills and Experience
- 7+ years of experience developing device firmware in an embedded RTOS environment
- Experience with delivering small-to-medium software components as sole owner, and/or larger components as project lead or senior contributor in a team.
- Must be able to design and implement code in C from a set of high-level requirements, and to debug problems in code written by you or by others, with little or no assistance.
- Understanding of RTOS concepts and services, such as tasks, locking, timers, buffer and memory management, flash access, GPIOs, and networking stack APIs, and hands-on experience in their use
- Hands-on experience developing software on ARM or similar architecture.
- Comfortable with hardware, able to read a hardware datasheet and write software for it.
- Familiar with development tools such as cross-compilation, source control (git), bug tracking (JIRA), and jtag debuggers.
- Familiar with the software processes require to deliver production-quality firmware, including writing functional specs, writing readable and functional C code, and participating in code reviews
- Strong verbal and written communication skills, able to describe complex technical concepts concisely and succinctly.
- Ready to work in a dynamic, fast-paced environment where you will be exposed to many technical areas, will wear many hats, and aren’t afraid to tackle the unknown
- Familiarity with secure programming techniques in C, C++ is required
- Ability to fix security problems, such as flagged by Static Code Analysis, in code the candidate is responsible for
- BS/MS in Computer Science (or equivalent)
- Must be located in Bangalore, India, within easy travelling distance of the Ayla office
This position will be part of an exciting, high growth industry. If you are a driven Engineer with the applicable knowledge and experience, please apply today!
Keywords: C, C++, networking, TCP/IP, operating system, Linux, BSD, 802.11, micro-controller, web service, SSL, HTTP