Similar jobs
Responsibilities of IoT Engineer
- To research, build, test, and document state-of-the-art IoT solutions with integrated electronics and firmware development.
- To develop local IoT device software that includes monitoring, execution, and self-healing processes.
- To design innovative IoT services that communicate with server-side technologies and develop MEAN stack solutions wherever necessary.
- To learn the functionings of and implement new state-of-the-art tools/techniques to showcase experience in quick prototyping methods and structured implementation.
- To design and develop platform solutions for cloud-to-edge IoT applications with customizable configuration abilities for deployment to different clients with different needs.
- To work with dynamic IoT, Computer Vision, and MEAN technology stack to find solutions to complex real-world problems.
- To plan and build efficient tools to optimize support QA, deployment, and support services.
Skills required to become an IoT Engineer
To become an IoT Developer, you must have the following skills:
- You should have hands-on experience in coding in multiple programming languages, including Embedded-C, Embedded C++, and Python.
- It would help if you had an in-depth understanding of Linux OS and its process management, device management, and connectivity features.
- You should be well-versed in embedded software architecture – prior experience in working with UML use-case diagram, class-diagram, and sequence diagram to accurately depict system architecture is highly valued.
- You should possess in-depth technical knowledge in working with 32-bit ARM cortex M3/M4 controllers.
- You should have prior experience in working with wireless stacks like Zigbee or Thread or BLE-Mesh.
- You should have expert knowledge and be proficient in writing business logic on embedded environments using test-driven methodology on RTOS and non-RTOS platforms.
- You should be proficient in communication protocols including I2C, SPI, 1-wire, UART, MODBUS, DALI.
- You must have excellent communication, problem-solving, and analytical thinking abilities.
-
Perform analysis, design and implementation of assigned projects using sound engineering principles and adhering to business standards, practices, processes, and product / program requirements
-
Engage with global teams to effectively translate customer requirements to software requirements and identify potential solutions that are optimized to operate with in constraints of the product
-
Troubleshoot variety of complex software problems
-
Provide timely status updates and proactive communications on issues to the stakeholders.
-
Able to interface with internal and external stake holders regarding software issues.
-
Contribute as part of teams put together to meet overall organization initiatives/objectives
-
As a technical lead,
-
Guide team efforts towards successful deliverables.
-
Provide technical leadership to teammates through coaching and mentorship.
-
Able to effectively manage escalations and operate under crisis
-
Have the ability and willingness to acquire in-depth understanding of domain and existing products (beyond software) and apply that knowledge to develop new products and to deliver enhancements/ fixes for customer requirements.
-
Background in Industrial Automation
-
Prior experience in supervisory control systems software
-
Bachelor of Engineering degree in Computer Science/Information Science/Electronics/Electrical/Instrumentation with strong back ground in Industrial automation software
-
Strong C, C+ programming on variety of Windows platforms using Microsoft technologies
-
Sound knowledge of Computer Science fundamentals data structures, algorithms, operating system concepts
-
Excellent analytical skills, methodical problem-solving skills and troubleshooting skills
-
Prior experience of working in global teams and interfacing with multiple stake holders
-
Excellent communication skills (verbal and written) and the ability to interact with extended teams spread across the globe.
- Become a member of the team responsible for IoT hub software development. IoT hub provides IoT functionality (smart home, smart appliance,…) to mobile and web clients and runs on Linux-based host like smart home hub, broadband router, STB, etc.
- Implementation and/or extension of leading wireless/wired protocols (ZigBee, Bluetooth, IP-based,..) for communication with smart devices
- Development of new features for control and monitoring of smart devices and automation of IoT system
- IoT hub software porting on various hosts
- Software optimizations
Position: C++ Developer
Location: Hyderabad
Requirements:
- Strong C++ skills obtained in multiple years of C++ programming experience (at least 3 years)
- Good understanding of embedded system development based on Linux OS
- Knowledge of advanced programming concepts (e.g. Multi-Threading, OS internals, Networking, IPC mechanisms)
- Solid understanding of computer networking (TCP/UDP/MQTT/SSL)
- Solid understanding of Git source code management system
- Troubleshooting skills
- B.Tech/M.Tech/MCA in computer science/ECE/EEE
- Fluent English
You’ll be our: Firmware Engineer
You’ll be based at: IBC Knowledge Park, Bengaluru
You’ll be Aligned with: Embedded Manager
You’ll be a member of: Vehicle Software
What you’ll do at Ather:
A successful candidate is expected to lead the Firmware development and integration effort for various Ather products and be responsible for qualifying and integrating FW at various stages with HW. Responsibilities include:
-
Understanding requirements from different stakeholders and translating these to application features
-
Writing high quality source code to program complete applications within deadlines
-
Unit-testing code for robustness, including edge cases, usability, and general reliability
-
Performing functional and non-functional testing
-
Troubleshooting and debugging applications
-
Designing creative prototypes according to specifications
-
Evaluating existing applications to reprogram, update and add new features
-
Developing technical documents and handbooks to accurately represent application design and code
-
Identifying and communicating possible risks along with preventive and corrective measures
-
Designing HW/SW integration while working with HW/Algorithms/Cloud teams to deliver an integrated solution.
Here’s what we are looking for:
Must have:
-
ECU Software development experience (any of the ARM based Auto ECUs Body Electronics/Infotainment/ Powertrain/Cluster)
-
Previous experience with Low level firmware, Boot loaders, Device Drivers development
-
Hands on Experience Communication Protocols CAN, I2C, SPI, RS232
-
Experience with static analyser, JTAG tools etc…
-
Knowledge in Assembly and compilers
-
Strong testing & debugging skills, experience with logic analysers
-
Language: C, C++
Nice to have:
-
Knowledge of HW design for ECUs
-
Experience with UDS, AutoSAR, ISO26262, MISRA Guidelines
-
Previous experience with SIL and HIL Testing as well as Test case generation for the same.
-
Hand on experience in using CAN tools & CAPL Scripts, Bus Master
-
Real Time operating Systems, Python, Matlab/Simulink
You bring to Ather:
-
BE/B.tech/B.Sc is minimum req with minimum 2-6 years of prior industry experience.
Open Edx | |
1 | Hands on experience on Open edX framework |
2 | • A Minimum of 2 years is required on handling Open edX project with overall experience of 4 to 6 Years. |
3 | • The Candidate must have developed and deployed open edX based applications and platforms. |
4 | • Real-world experience with web development frameworks like Django |
5 | • Ability to code front to back with JavaScript, Python, or other server-based programming languages |
6 | • Hands-on experience on Git, Slack, Trello |
7 | • Should have experience in deploying scalable software applications to AWS or equivalent |
8 | • At least 2 years of related experience with React, Webpack, or other modern JavaScript frameworks. |
9 | • Experience building static websites and single-page applications, experience with architecture and solutions |
10 | Good hands on experience in docker |
11 | • Understanding of MOOC (Massive open online course) Architecture Integrating with the third-party apps using LTI/QTI - Significant hands on experience in installation and configuration of OpenEdx as an application, managing users and roles and managing multiple tenants in an instance |
12 | • Experience in customizing OpenEdx as a product around creating plugins, integrating with third party apps using LTI' |
13 | • Theming and Branding, Multisite, Certificates, SAML, Basic Reporting (grades, enrolments) |
14 | • Experience in Open edX mobile app with branding and analytics set up |
15 | • Experience with DevOps will be added advantage |
Experience in Object-Oriented design and Multithreaded programming
Strong analytical and problem solving skills
Strong understanding of computer systems e.g. operating systems, networks, performance optimization, etc
Degree in Computer Science or Computer Engineering or related field
Independent team player with an eye for details and report on status and planning of own work.