Search by job, company or skills

Senior Internet of Things Engineer

Senior Internet of Things Engineer

Lennox India Technology Centre
10-12 Years
Not Disclosed
  • Posted 11 hours ago
  • Be among the first 10 applicants

Job Description

Responsibilities

  • Design and develop cloud-connected IoT software and embedded/edge components, with C++ as the primary language.
  • Build services for device onboarding, telemetry ingestion, device management, and command/control workflows.
  • Develop distributed, real-time communication components integrating Edge, HTTPS, and REST APIs.
  • Own successful implementation and delivery of software products and components throughout the product lifecycle, on time and with high quality.
  • Assure proper technical requirement definition with internal and external customers, marketing, manufacturing, and other support groups.
  • Lead technical design and architecture reviews, and participate in prototyping activities.
  • Collaborate with Architecture, Embedded, Mobile Apps, IT, Hardware, QA, Manufacturing, Technical Support, and Operations teams.
  • Actively participate in the definition and implementation of new processes and improvements.
  • Identify and create new technologies and ideas to increase the organization's intellectual property and to better address customer needs.
  • Mentor and train other engineers.
  • Having Open mindset to work with legacy network libraries in IoT domain
  • More curious to learn any Open Source libraries

Education Requirements

  • BS in Computer Science, Computer Engineering, or equivalent is required.
  • MS in Computer Science/Computer Engineering or equivalent is preferred.

Required Technical Skills

  • 10+ years of professional software development experience, with a focus on IoT and embedded systems.
  • Proficiency in C++ developing distributed, real-time applications.
  • 5+ years of experience with multithreaded application development and debugging.
  • 5+ years of experience with socket-level TCP and UDP development in C/C++, using modern debugging tools.
  • Strong understanding of software design principles and best practices; ability to develop unit-test-driven software components.

Cloud & IoT

  • Strong understanding of IoT architectures, protocols, and standards: MQTT, WebSockets, HTTPS, REST APIs, JSON/XML.
  • Experience with cloud IoT services such as Azure IoT Hub and AWS IoT Core.
  • Strong understanding of device-to-cloud integration.

Linux & Debugging

  • Strong Linux Ubuntu skills, including creating and maintaining system services and navigating the system using Bash.
  • Strong skills monitoring and managing Linux services and troubleshooting service failures using gdb, coredumps, trace files, and log files.
  • Strong networking skills (TCP, UDP, ARP, IGMP) with the ability to monitor and debug on a live system.
  • Strong experience using SSH to access and manage systems in the cloud.
  • Strong Bash shell script authoring and maintenance.

Network & Home Router

  • Strong understanding of Network Address Translation (NAT), network handshakes, and Round-Trip Time (RTT) analysis and debugging.
  • Strong understanding of Publisher-Subscriber (Pub-Sub) frameworks in the IoT domain, including MQTT brokers, DDS (Data Distribution Service) standards, message queuing systems, and streaming platforms.
  • Strong understanding of distributed systems architecture, clustering, and middleware concepts.
  • Strong understanding of client-server and Pub-Sub application development, packaging, deployment, and execution, including Debian packages (.deb) and standalone executable binaries.

Tools

  • Strong skills with Git and GitLab.
  • Experience with Visual Studio Code and Visual Studio with WSL.
  • Experience with Configuration Management tools (version control, bug tracking, change management, automated builds, and coding standards).
  • Experience with JetBrains CLion is a plus.
  • Remote debugging skills using gdb and gdbserver are a plus.
  • Experience with Artitellery or any load test framework is a puls

Preferred Skills

  • Experience with OpenDDS or another Data Distribution Service (DDS) middleware.
  • Experience with at least one other high-level language, such as C#, Java, Python, or Node.js.
  • Microservices architecture, Docker, and Kubernetes.
  • CI/CD experience (Azure DevOps, Jenkins, GitHub Actions, or similar).
  • Experience developing and deploying cloud applications on Microsoft Azure, with emphasis on: Virtual Machine Scale Sets; load balancing; Syslog and Azure Metrics reporting and monitoring reports; network VM maintenance planning and monitoring. Multi-region and availability-zone VMSS experience is a plus.
  • Azure DevOps Boards, Backlogs, Sprints, and Plans; ability to understand an Azure DevOps pipeline and the concepts it holds.
  • Experience with edge computing platforms.
  • Experience working in Agile and globally distributed teams.

Teaming / Soft Skills

  • Excellent verbal and written communication skills, with technical and non-technical staff.
  • Strong technical leadership and architectural decision-making skills.
  • Ability to collaborate across multiple functional teams and external partners to deliver sound technical solutions to our customers.
  • Demonstrated ability to drive product and process improvements throughout the software organization.
  • Ability to work with third parties and offshore development teams as needed.
  • Self-driven, results oriented, with strong organizational skills and ability to train and mentor others.

More Info

Job Type:
Industry:
Employment Type:

Key Skills

AWS IoT Core

Configuration Management tools

JetBrains CLion

IoT architectures

OpenDDS

WebSockets

GitHub Actions

Azure IoT Hub

Https