
Software Engineer(Layer 2/Layer 3)
at It offers user-friendly fiber speed equipment.

Software Engineer(Layer 2/Layer 3)
Location : Gurgaon (WFH currently)
Experience/ Skills Required : 5 to 10 years
To be successful in this role you should be well versed with the concepts of networking and comfortable in C programming in a linux environment for embedded software. As we use Linux, experience with this operating system is a mandatory requirement, knowledge and experience on OpenWrt is a bonus. Working experience with router software development for layer 3 and layer 4 features.
Domain knowledge required: IPv4, TCP/UDP, IPv6, NAT, Firewall (iptables), DHCPv4, DHCPv6, IPv6 prefix delegation, Port forwarding, Source based routing, Policy based routing, L3 QoS, IGMP proxy, IPv6 MLD snooping, DNS, DNS proxy. Knowledge on VoIP is a bonus.
Management methods: TR069, SNMPv2, CLI.
Operating system: Linux, OpenWrt
Programming languages: C(must have), Python
Working for us means having a healthy interest in Software but most of all, you like to work in a team. You like to take initiative and have the “just do it” approach. Having the right mentality and attitude are more important for us than a degree. Dedication, investigation and responsibility are keywords for us. Preferred years of experience in industry/technology: 5-10 years.
Role:
As a Software Engineer you develop new software features and solutions for our fibre connectivity product portfolio. The position offers a wide range of possibilities to work with everything from low-level Linux drivers to high-level applications. You develop for various protocols and HW interfaces, often in complex network scenarios in combination with customer specific requirements. The team is responsible for all SW development for existing and new Home Gateways. This means development of Linux drivers, network functionality, remote Management (TR-069) and VoIP application (sipapp). The development is mainly done in C and in Linux environment, knowledge in Python is an add-on. Products and development are realized in Agile.

Similar jobs
Role: Embedded Software Developer
Exp: 3-7yrs
Location: Noida
Work Mode: 5days
Description:
- Must be B.E./B.Tech./MTech. in Computer Science, IT or related software engineering degree.
- Must have 3 to 7 years’ experience with strong experience of C system programming in embedded environment.
- Must have relevant experience of IMS or Telephony domain.
- Must have excellent S/W design Skills with proven experience of writing efficient code for embedded environment.
- Must have experience of Linux or RTOS S/W design programming.
- Must have excellent debugging skills, good experience on analyzing network protocol Logs.
- Must be conversant with embedded development tools, debuggers, Network protocol analyzers like Wireshark etc.
- Must have hands-on experience & understanding of S/W Management Processes: Source Code Management, Unit/Integration Testing, Branch management, Feature Configuration etc.
- Preferred to have experience on 4G/5G wireless protocol stack or WLAN SW development.
- Preferred to have worked on Android based Smart Phone or embedded M2M/IOT projects .
- Preferred to be from leading telecommunication, semiconductor or electronics ODM/OEM company background.
- Strong Communication skills, Self-driven, Positive attitude & hardworking.


Job Title:
Telephony Engineer
Job Description:
- Support the operations team with debugging issues related to the telephony platform
- Identify issues with calls using monitoring and analysis tools such as VoIPMOnitor
- Write scripts to automate tasks, monitor the services and functionalities
- Contribute to the improvement of the system by providing ideas
- Help with capacity planning
- Perform the scheduled maintenance activities
- Modify the existing code to accommodate new features
Experience Range:
3- 6 years
Educational Qualifications:
Any graduation,
Job Responsibilities:
• Knowledge of open source technologies, VoIP, SIP, WebRTC etc.
• Shell scripting.
• Experience in Asterisk and Kamailio or OpenSIPS.
• C/C++ or JS programming with Linux.
• 5-8 years experience.
• Good communication skills.
• Willingness to work in the night, whenever required, for handling support related issues.
Skills Required:
ViOP, OpenSIPS, SIP, Shell Scripting, Asterisk, kamailio, C++, Linux, Development,
About the role
Experience in Firmware/Software programming in embedded Linux & RTOS based application development. Candidate must have a very good understanding of ARM processor, hardware and custom board or product development experience.
Roles and Responsibilities:
- Design, code and integrate software for an embedded Linux/RTOS targeted application (applications, drivers, framework)
- Customization, deployment and maintenance of Linux distribution
- Interact with Linux kernel, integrate new device drivers Improvement and maintain existing software components
- Perform unit test, Integration test, verification and validation of the product developed.
- Assist with the hardware design surrounding the processor
- Document the projects according to standards (protocols, architecture, technical specifications, etc.)
Qualifications:
- Bachelor degree in Electronics or computer science engineering.
- Minimum 6 - 12 years of experience in embedded Linux programming.
Specific skills:
- Expert in C programming with RTOS.
- Hands-On experience with Protocol development.
- Nice to have Protocol development experience such as USB or DP, HDMI or equivalent.
- System level design and understanding of overall system
- Strong knowledge of Linux, ARM processor architecture with SOC, FPGA interface is a plus.
- Hand-on experience on Linux kernel and device-driver development and debugging.
- Knowledge/Experience of TCP/IP, Network programming.
- Ability to write effective and reusable code according to best practices.
- Must be a dynamic, autonomous, and team-oriented individual.
- Knowledge of hardware and low-level development is an asset.


Domain Skills
Leads a team of Engineers for designing and architecting next generation platform solutions for clusters/Interior monitoring systems
Architecting the design for new features and technologies for Platform.
Expertise in programming using C, C++ and good understanding of OOAD & UML
Capable of analyzing HW schematics to realize the SW requirements.
Support and resolve issue resolutions and clarification for cross-functional teams.
Support team lead and project manager at program level in resolving open issues
Technical Skills
Expertise in memory management (eMMC, NAND)
Design, Develop and test device drivers in Linux/Android/QNX platform.
Multithreaded programming, usage of IPCs, Interrupts & synchronization methods.
Expertise in using the communication protocols (I2C, SPI & UART) in the device driver.
Expertise in handling Device Tree based configurations.
Strong C & C++ programming skills, OOPS concepts
Linux Architecture knowhow
Strong in software development for real-time embedded systems
Experienced in Design/Architecture Tools like EA
Expertise in SCM Tools like GIT/GERRIT
Ability to create and review changes for Gerrit and participate in a continuous integration loop
Ability to create/understand the build infranstructure using CMake for the middleware components
Experience in Unit test tools like cppunit, gtest.
Know-how and experience of SAFe/Agile Development
Knowledge in Automotive Safety Standards and Processes (ASPICE).
Logical, Analytical and Debugging/Problem-Solving skills
Qualifications
B.E/B.Tech in Computer Science with hands on with Embedded software development on RTOS


- Work directly with the other Software/Firmware Engineers and Electrical/RF/Systems Test Engineers to write needed software
- Design and implement software platform for firmware on embedded CPUs with multiple OS such as Windows, Linux, FreeRTOS, TI-RTOS and embedded Linux
- Use compliers, debuggers revision control and automated build systems.
- Design/develop components of software platform for use by other developers to extend its capabilities and build custom applications/behavior on top
- Develop build methodologies, debugging tools/utilities
- Develop and release Software using Agile methodology
- Write unit tests and support continuous integration and automated test methodology
- Brainstorm for new ideas and ways to improvement product and processes
- Consult with peers for feedback during debug/testing stages
- Document and maintain design processes









