Telephonic Interview: Not Available
We are seeking a passionate and skilled IoT Engineer to join our growing team. This role will focus on the design, development, and deployment of connected devices and systems, with a primary focus on leveraging the ESP32 microcontroller platform. You will be responsible for the entire lifecycle of IoT solutions, from concept to production, ensuring robust, secure, and scalable systems. You're a problem-solver, comfortable with both hardware and software aspects of IoT, and eager to contribute to innovative projects.
Responsibilities:
- Device Development: Design, develop, and prototype IoT devices utilizing the ESP32 microcontroller. This includes firmware development, hardware integration, and testing.
- Firmware Programming: Write clean, efficient, and well-documented firmware in C/C++ for the ESP32, incorporating libraries and protocols for connectivity (Wi-Fi, Bluetooth, LoRaWAN - specify relevant protocols).
- Cloud Integration: Integrate IoT devices with cloud platforms (AWS IoT, Azure IoT Hub, Google Cloud IoT Core - specify platform(s)) for data ingestion, processing, and visualization.
- Hardware Selection & Design: Evaluate and select appropriate sensors, actuators, and other hardware components for IoT applications. Participate in hardware design reviews.
- Communication Protocols: Implement and optimize communication protocols (MQTT, HTTP, CoAP - specify relevant protocols) for reliable data transmission.
- Security: Implement security best practices for IoT devices, including secure boot, firmware updates, and data encryption.
- Testing & Debugging: Conduct thorough testing and debugging of hardware and software, ensuring quality and reliability.
- Documentation: Create detailed technical documentation for hardware designs, firmware code, and system architecture.
- Collaboration: Work closely with cross-functional teams including hardware engineers, software developers, and product managers.
- Problem Solving: Troubleshoot and resolve issues related to IoT devices, connectivity, and cloud integration.
- Continuous Improvement: Stay up-to-date with the latest IoT technologies and trends, and contribute to the improvement of our development processes.
Required Skills & Experience:
- Education: Bachelor's degree in Computer Science, Electrical Engineering, or a related field. (Or equivalent experience)
- Programming: Proficiency in C/C++ programming.
- Microcontroller Experience: Proven experience programming and working with microcontrollers, specifically the ESP32.
- IoT Protocols: Strong understanding of IoT communication protocols (MQTT, HTTP, CoAP).
- Connectivity: Experience with Wi-Fi, Bluetooth, and ideally other wireless communication technologies (LoRaWAN, Zigbee - specify relevant ones).
- Cloud Platforms: Familiarity with cloud platforms for IoT (AWS IoT, Azure IoT Hub, Google Cloud IoT Core).
- Operating Systems: Understanding of Real-Time Operating Systems (RTOS) - FreeRTOS is a plus.
- Hardware Interfacing: Experience with interfacing sensors, actuators, and other hardware components with microcontrollers.
- Version Control: Proficiency with Git and related version control tools.
- Debugging: Strong debugging skills using JTAG debuggers, logic analyzers, and other tools.
- Problem-Solving: Excellent analytical and problem-solving skills.
- Communication: Excellent written and verbal communication skills.
Desired Skills & Experience (Nice to Have):
- Experience with ESP-IDF development framework.
- Experience with FreeRTOS.
- Experience with Over-the-Air (OTA) firmware updates.
- Knowledge of security best practices for IoT devices.
- Experience with hardware design tools (e.g., Altium Designer, Eagle).
- Experience with data visualization tools (e.g., Grafana, Tableau).
- Experience with containerization technologies (Docker, Kubernetes).
- Experience with CI/CD pipelines.
- Knowledge of power optimization techniques for battery-powered devices.
- Familiarity with Agile development methodologies.
- Experience with low-power design principles.