Senior Software Engineer - C/C++/Networking
The Senior Software Engineer works with an experienced cross-functional team to deliver innovative wireless communication security products. They will utilize real world knowledge and a disciplined approach to product development, and adapt readily - Time-To-Market demands, ensuring product quality and timely delivery in a highly dynamic market environment.
ESSENTIAL FUNCTIONS :
- Design and deliver server platform based software products from conceptual stages to production delivery.
- Work independently on all phases of server centric software development including specification, architecture design, rapid prototyping, efficient coding, integration, debug and unit testing. Support UL and EN regulatory compliance
- Work collaboratively and effectively as part of a small team on fast paced projects that have tight deadlines.
- Support manufacturing life cycle for new products from NPI to production run and incremental software release of functionality.
- Lead, train, and mentor junior engineers
- Document and present design requirements to staff
- Possess a demonstrated ability to communicate with customers via email and phone
REQUIRED SPECIFIC JOB KNOWLEDGE, SKILL AND ABILITY :
The individual must possess the following knowledge, skills and abilities and be able to explain and demonstrate that he or she can perform the essential functions of the job, with or without reasonable accommodation, using some combination of skills and abilities.
- Must be an excellent SW developer. We expect experience developing software C/C++ in Linux and Perl. Other scripting languages is a plus (i.e. Python).
- Strong experience with SQL, Database design (MySQL a plus)
- Experience with Network Security Administration and understanding of the full SDLC.
- Experience with Multithread, Socket connection, OpenVPN server setup, OpenSSL, Certificate, Encryption, and TCP/IP troubleshooting.
- Experience with Testing tools, virtualizing servers, and using source control (SVN a plus).
- Experience with Linux development infrastructure, tool chain and build environment (Jenkins a plus).
- Experience developing both Linux application software; installing Linux software and configuring Linux systems.
- Experience with Application server remote update, and Apache Server authentication.
- Proven record of designing and delivering complex networking products from inception to production delivery.
- Previous experience developing quality software for commercial products.
- Experience with communication systems involving wireless, radio, security and mesh networking technologies is a plus.
Experience with OSI networking protocols and applications is a plus.
- Experience with system development tools, including Source-Level Debuggers, Protocol Analyzers (Wireshark), Code Analysis tools, etc.
- Experience with any of the following is nice to have: Apache Server, GPIO, TCL/Tk, BACnet, Cloud server setup, and WebGUI design (javascript and jQuery a plus).
About Emproto Technologies Private Limited
Emproto is a young organization started by Tech enthusiasts who have worked as Product Managers and architects for organizations like Flipkart, Axis Bank, Synchronoss Technologies. Emproto is a Full stack mobile and web app development partner for organizations like Innoviti, Talisma, Savaari.com among others. It is a rapidly growing organization with about 60 problem solvers working on cutting edge technology stack.
https://emproto.com/our-work.php
Similar jobs
Job Title: C++ Buffer Developer
Location: Pune, India
Experience: 2-3 years
Salary: 8 LPA
Notice Period: 0-15 days
Job Description:
We are seeking a skilled and passionate C++ Buffer Developer to join our team in Pune. As a C++ Buffer Developer, you will be responsible for designing, developing, and maintaining high-performance buffer systems for our software applications. You will collaborate with cross-functional teams to analyze requirements, implement solutions, and ensure the overall quality of the software.
Responsibilities:
- Design, develop, and maintain C++ buffer systems to meet the requirements of our software applications.
- Collaborate with cross-functional teams, including software engineers, designers, and product managers, to understand project requirements and deliver high-quality solutions.
- Write clean, efficient, and maintainable code following best practices and coding standards.
- Conduct thorough testing and debugging to ensure the stability and performance of the buffer systems.
- Optimize and enhance existing code to improve overall system efficiency and performance.
- Participate in code reviews to provide and receive constructive feedback for continuous improvement.
- Stay up-to-date with the latest industry trends and technologies related to C++ programming and buffer systems.
- Document the design, implementation, and maintenance of the buffer systems for future reference.
Requirements:
- Bachelor's degree in Computer Science, Software Engineering, or a related field.
- 2-3 years of hands-on experience in C++ programming, specifically in designing and developing buffer systems.
- Strong knowledge of data structures, algorithms, and object-oriented programming principles.
- Proficiency in using C++11 or higher versions.
- Experience with memory management techniques and performance optimization.
- Familiarity with Linux/Unix environments and development tools.
- Good understanding of software development lifecycle and agile methodologies.
- Excellent problem-solving and analytical skills.
- Strong communication and collaboration abilities.
- Ability to work independently and handle multiple tasks simultaneously.
- Knowledge of network protocols and socket programming is a plus.
- Experience with version control systems (e.g., Git) is preferred.
If you are a talented C++ developer with a passion for buffer systems and want to contribute to the success of our software applications, we would love to hear from you. Apply now and join our dynamic team in Pune!
Note: The salary mentioned is as per the budget and may be subject to negotiation based on the candidate's skills and experience.
Hi
About us
Job description
Requirements
- C/C++ is a must. Rust is preferred. We already have part of the core product written in Rust. If you know Haskell, please let us know. We don't use Haskell in our stack but like folks who know it.
- It is essential that if you have done courses or have work experience in Operating Systems, Distributed Systems, and Computer Networks.
- Good exposure to debugging (more than just `!analyze -v`). We suck at debugging here, so can use your help!
- Great version control (Git) hygiene and familiarity with CI/CD. Test- and issue-driven development (that's our new term).
- Candidate should prioritize documentation to meeting (can't emphasize enough). Who has time to talk and listen (and forget) when one can write and read? During the interview, we may ask you how to organize your notes, references, and knowledge (We use Notion and self-hsoted Gitlab).
- Familiarity with scripting languages such as Python or Nim is appreciated. Both languages are used heavily in DevOps here.
- If you don't know Java, that's +1 ;-p (just kidding).
Regards
Team Merito
Job Description
We are a growing company looking for an efficient systems engineer to help us expand our computing infrastructure. The systems engineer's responsibilities include working with a team of IT specialists to design, set up and maintain a network of computers, including hardware, software, and system architecture.
To be successful in this position, the systems engineer should be a highly motivated, results-driven individual who can create the perfect solution for our organization's higher-level needs. The best candidate will also be an excellent listener and communicator, with the ability to explain why their solutions are the best fit for us.
Responsibilities:
Overseeing the development and installation of new networking and computing infrastructures.
Selecting the best possible solutions using knowledge of a wide range of available technologies.
Monitoring systems in the existing network to ensure there are no productivity set-backs.
Installing and configuring operating systems and application software.
Implementing best practices for system security and data backups.
Anticipating potential issues or bottlenecks and identifying possible solutions.
Troubleshooting and resolving all technical issues when they arise.
Provide detailed specifications for proposed solutions including materials, manpower and time necessary
Communicating effectively with IT support staff to ensure the setup process runs smoothly.
Liaising with vendors and keeping relevant stakeholders up to date with developments.
Systems Engineer Requirements:
Bachelor's degree in computer science, information systems, or related field (Master's preferred).
Proven track record of installing, configuring, and troubleshooting UNIX-based systems.
Exceptional knowledge of networking technologies (OSI network layers, TCP/IP).
Familiarity with administration, performance tuning, and system monitoring.
Good communication skills (written, verbal, and face-to-face).
Experience-3-4years
Salary- 10LPA
Industry
Information Technology & Services
Industry
Information Technology & Services
Employment Type
Full-time
As a partial Google-acquired company, we’re proving success doesn’t come by accident.
Benison has a history of demonstrating growth by innovation. We re-invest our profits back into the initiatives for growth of our people and the company. The culture, technology innovations, customer service, our actions are aligned to our values. Our value and culture is the reason why our people stay with Benison much longer than industry standards
Get the best from your life with Benison
Join the Benison Developer Family*
Benison Technologies is filled with passionate people who lead fascinating lives. You’ll fit right in. From the amazing benefits, mentorship, growth opportunities and team bonding activities, we help you thrive while experiencing the Benison life.
Roles & Responsibilities
-
Develop detailed software functional specification, articulate system/software architecture specifications for product features to meet product requirements
-
Design and implement new functions mainly in C/C++
-
Work on Networking and security modules in L4-L7
-
Peer code reviews
-
Write unit tests using C++
Requirements
-
Experience 4 - 20 years within SW development
-
Excellent C/C++ and object-oriented programming skills
-
Excellent design analysis skills, including experience with software modeling,
-
high-availability, software reuse, performance, testability, and extensible
-
Excellent Networking programming skills on Linux L4- L7
-
Structured and thorough with analytical and troubleshooting skills
-
Highly motivated team player
-
Agile way of working
Type of work
L4 - L7 Developer
For more information you may visit *
https://benisontech.com/" target="_blank">https://benisontech.com/
You would be part of:
- Designing/Improvement of new/existing architectures of distributed computing with subcomponents of Unmanned Aerial Systems (UAS).
- Working/Researching with industrial state of the art sensor systems and modules, and developing drivers (HAL or wrapper) and applications around their usage.
- Design and implementation of communication protocols between different subcomponents of UAS for distributed computing.
- Writing Applications and Drivers from the scratch for (embedded)linux based systems.
- Scripting and automations around work flows of UAS usage.
- Working with existing sophisticated software stacks of subcomponents of UASs.
- Working closely with electronics, design and systems teams for architecture development and deployment.
- Working closely with Flight Controller engineers to do collaborative development of UAVs.
We expect you to be:
- Experienced in hands-on development of complex embedded systems involving multiple microcontrollers or SoCs.
- Very good in analytical abilities to be able to do core research and development activities.
- Able to write low level drivers (wrapper or core) from the scratch.
- Very comfortable reading and understanding datasheets and reference manuals of microcontrollers, peripherals, sensors etc.
- Able to understand existing complex embedded software stack written in C/C++.
- Solid in C.
- Good in C++.
- Comfortable with using hardware debuggers.
- Having Hands-On experience with RTOS concepts like scheduling, threads synchronicity , race conditions etc.
- Having Solid understanding of interrupt mechanisms.
- Experienced in working with different hardware protocols like SPI, I2C, UART, PWM, CAN, USB etc.
- Having Solid understanding of interrupts architecture of ARM based microcontrollers like STM32, LPC etc.
- Having Good understanding of the concept of bootloaders.
- Able to multitask.
- A self-motivated and motivating personality who can work well independently as well as part of a team
- Having good interpersonal and soft skills who can adapt to the work environment while manifesting a good positive attitude
You are awesome if you are:
- Experienced in Linux Device Driver development.
- Having good exposure of working on and understanding of any sensor modules like GPS, LIDAR etc.
- Experienced in data filtering techniques (Example: Kalman filter)
- Develop embedded Linux Applications
- Work with a worldwide team to integrate the product to meet the requirement
Required Qualifications:
- Degree in Computer Science from a top-tier institution
- Relevant full-time work experience of 4+years
- Strong foundation in computer science, Object-Oriented software, unit testing & test automation with scripts
- Ability to self-teach.
Mandatory Technical Skills:
- Expert level programming in C/C++
- Linux systems programming, data structures & algorithms
- Networked applications
Desirable Technical Skills:
- Linux Board Bring up, device drivers would be an advantage