23 Oct
|
Zoid Technologies Private
|
Noida
23 Oct
Zoid Technologies Private
Noida
Job Summary-
Experience: 3–5 Years
Industry: Defence &
- Aerospace
Location: Noida
Employment Type: Full-time
Role Overview-
We are looking for a skilled Software Engineer with 3–5 years of hands-on experience in software development, primarily using C++. The ideal candidate should have strong programming fundamentals, experience developing modular and reliable software applications, and a positive understanding of Linux-based development environments, networking, and system-level programming.
At ZOID, you will work on developing, testing, debugging, and optimizing software solutions for complex defence and aerospace applications. This role requires strong problem-solving skills, ownership of assigned modules, and the ability to collaborate with cross-functional engineering teams to deliver robust, high-quality software.
Key Responsibility-
- Core Software Development
- Develop, maintain, and optimize production-quality software using C++.
- Design and implement modular, reusable, and maintainable software components.
- Apply object-oriented programming principles, appropriate design patterns, and software engineering best practices.
- Develop efficient algorithms and data structures to address complex engineering problems.
- Debug, troubleshoot, and resolve software defects and performance issues.
- Write clean, readable, and well-documented code.
- Linux &
- System-Level Programming
- Develop and debug software applications in Linux-based environments, particularly Ubuntu.
- Work with Linux processes, threads, inter-process communication (IPC), and system-level APIs.
- Implement multithreaded applications with a focus on concurrency, synchronization, and resource management.
- Write Bash scripts to automate development, testing, and routine operational tasks.
- Use Linux debugging and profiling tools to identify and resolve application-level issues.
- Work with build systems such as CMake and manage dependencies for software projects.
- Networking &
- Communication
- Develop network communication modules using TCP/IP, UDP, and socket programming.
- Implement reliable data exchange between software components and distributed applications.
- Work with APIs, communication interfaces, and data serialization formats.
- Troubleshoot network communication issues, connection failures, and data transmission errors.
- Understand and implement appropriate error handling, timeouts, and connection management mechanisms.
- Software Testing &
- Quality
- Write unit tests and integration tests to validate software functionality and reliability.
- Identify, reproduce, debug, and resolve software defects.
- Conduct code reviews and follow established coding standards.
- Use version control systems such as Git for collaborative development.
- Contribute to continuous integration, automated testing, and build verification processes.
- Maintain technical documentation, including software design notes, API documentation, and test reports.
- Performance &
- Reliability
- Analyze and optimize software performance, memory usage, and CPU utilization.
- Identify bottlenecks in multithreaded and system-level applications.
- Implement robust error handling,
logging, and recovery mechanisms.
- Develop software with a focus on stability, reliability, maintainability, and predictable behavior.
- Support integration testing, system-level debugging, and software validation activities.
Required Qualifications
- 3–5 years of professional experience in software development, with strong hands-on proficiency in C++.
- Solid understanding of object-oriented programming, data structures, algorithms, and design patterns.
- Good understanding of memory management, pointers, references, and resource management in C++.
- Hands-on experience developing and debugging applications in Linux, preferably Ubuntu.
- Working knowledge of TCP/IP, UDP, and socket programming.
- Experience writing unit tests, debugging complex issues, and maintaining production-quality code.
- Understanding of software development lifecycle, code reviews, testing practices, and technical documentation.
- Strong analytical, problem-solving, and troubleshooting skills.
- Ability to take ownership of assigned modules and work effectively within a collaborative engineering team.
Desirable Qualifications
- Experience working on complex, performance-critical, or mission-critical software applications.
- Exposure to defence, aerospace, robotics, automotive, or other engineering-intensive industries.
- Familiarity with distributed software systems and inter-process communication mechanisms.
- Experience with CI/CD pipelines and automated build and testing workflows.
- Knowledge of design and documentation standards, including IEEE/ISO/IEC 12207.
- Familiarity with software communication middleware or messaging frameworks.
Skills: software,linux,c++
📌 Software Engineer | R&D (Noida)
🏢 Zoid Technologies Private
📍 Noida