Company background and Vision
We at Neysa believe that good software is one where you don’t have to (necessarily) read the full manual. Good software is intuitive, inviting and accommodating. Most importantly, good software should make life easy. That’s easier said than done, though. Good software is definitely hard to write. For the end user to be required to do the least amount of work, the developer has to do the most. To get the most out of a computer system, the code should be as native as possible. Neysa is out to build the most intuitive network management software ever, and we hope you would write code to bring that vision to life.
Day in the life In this role...
Work with time-sensitive and streaming data for analysis, filtering and sorting, for example, the C++ STL. Create parallel processing architectures which can scale up and down on demand. Interact with external systems and handle their idiosyncrasies in a live, data-heavy, time-constrained environment. Provide a resilient and predictable platform for upper-layer applications. Come up with bespoke solutions for real-world data handling problems. Handle cryptography and communication security over untrusted channels.
On day one, we'll expect you to... Have a deep understanding of object-oriented programming, socket programming and memory management techniques. Have experience with multi-threaded and multi-core programming and its associated concurrency, locking and synchronization techniques. Be aware of interprocess communications (IPC/gRPC) and message queueing. Be comfortable with mathematical functions and the associated libraries in system programming. You also should be unafraid to use math to optimize your code. Understand synchronous and asynchronous communication, and when to use what. Be comfortable in handling low-level byte-handling operations.
What separates the best from the rest
You will need to have... The initiative to work on your own, at your own pace, but on a schedule. The courage to iterate, re-iterate and the re-re-iterate till you get it right. And then defend your design philosophy. Think through all the possible applications of your work, and then make sure it performs awesome in every one of them. Making the right algorithm choices based on design requirements. Write good, commented and (hopefully) error-free code. Logic failures are acceptable, but poor error handling is not.
What you can expect
The best equipment which complements your talents. The best tools in the business for you to bring your creations to life. A great environment. Flexible work hours, and flexible work locations. You will need to be in the office though. The opportunity to make your mark and shape the future. And have fun…
The Technical Skill Tree
Things you must know…
C, C++, Java, system programming, stream programming, socket programming, Linux Internals, Hooks and System Call and Kernel APIs. Locking and synchronizing techniques like mutexes, atomics, deadlocks and races and ways to avoid them. “Safe” programming, exception handling. String input/output and manipulation, data structure(hash tables, graphs, stacks, queues, trees, binary trees) and operations on them. System memory management, instruction reordering and memory order. A “code-based” understanding of the TCP /IP stack and other networking protocols.
Great if you know....
Garbage collection in C++, thread-safe and type-safe programming, hierarchal exceptional handling. Specialised algorithms for data collection, analysis and presentation. Understanding of the REST, protobuf, XML, JSON and other data interchange formats. Understanding of cryptographic libraries, key management concepts, and symmetric and asymmetric encryption. STL containers, API service creation, “daemons”, operating system services, microservices,
We'll help you out on ...
Web servers, system administration, website management, code management systems, and code debugging systems. CI/CD, Automation frameworks. Version management tools.
The Neysa Team
Neysa is founded by a team, which has nurtured a multi-million dollar business from its inception and grown it to be the best in its industry. We are problem solvers at heart, and we get our kicks when our ideas are out there, taking a crack in the real world. Never accepting the status quo, we have always pushed the boundaries of what is possible. And changed our lives, the people we work with and the community in which we operate.
Subodh PopalwarSoftware Engineer, Memorres
About Neysa Networks Pvt Ltd
Good tools are defined by their user-friendly design, facilitating fast and efficient task completion while minimizing disruptions. They are inherently intuitive, allowing users to achieve a high level of proficiency without requiring specialized training. Moreover, with the integration of AI, these tools can potentially provide additional assistance and support, and possibly take over when the human is not in the loop.
After enduring decades of escalating challenges, interoperability nightmares, inept field technicians, and countless sleep-deprived calls, we believe the time has come for a change.
Neysa was founded with a clear purpose: to develop the ultimate tool tailored specifically to meet the needs of engineers.
Software Development, Network Automation
- Design and develop robust and efficient software applications using C++ programming language.
- Write clean, maintainable, and well-documented code following coding standards and best practices.
- Conduct thorough testing and debugging of software applications to ensure high-quality and reliable products.
- Optimise software performance and ensure scalability of applications.
- Participate in code reviews and provide constructive feedback to team members.
- Troubleshoot and resolve software defects and issues reported by users or discovered during testing.
- Bachelor's degree in Computer Science, Software Engineering, or a related field.
- 3-5 years of professional experience in C++ development.
- Strong knowledge of object-oriented programming concepts and design patterns.
- Experience with software development tools, such as IDEs, debuggers, and source control systems.
- Knowledge of data structures and algorithms.
- Familiarity with software development methodologies, such as Agile or Scrum.
- Strong problem-solving and analytical skills.
Lifespark Technologies is looking for individuals with a passion for impacting real lives through technology. Lifespark is one of the most promising startups in the Assistive Tech space in India, and has been honoured with several National and International awards. Our mission is to create seamless, persistent and affordable healthcare solutions. If you are someone who is driven to make a real impact in this world, we are your people.
Lifespark is currently building solutions for Parkinson’s Disease, and we are looking for an embedded software lead to join our growing team. You will be working directly with the founders on high impact problems in the Neurological Healthcare domain. You will be solving some of the most fundamental and exciting challenges in the industry and will have the ability to see your insights turned into real products every day
1. RTOS based multithreaded software development
2. Building future ready, scalable software architectures
3. Liasing with hardware team to decide project requirements
4. Realtime IoT functionality development on ESP32 platform
5. Integration of third party services for cloud based communications and computation
6. Maintaining and documenting software via git (GitLab)
7. Coordinating releases, setup and maintenance of CI/CD pipelines
8. Managing AWS based backend services, integration with AWS services such as S3,
9. Firmware security, Flash encryption, Bootloader encryption, secure communications
10. Deep integration with hardware team - stress testing hardware
11. Development of device drivers
12. Software testing and maintenance
Recommended experience :
1. Good command over Linux
2. Familiarity with real time tasks and timing sensitive system design
3. Familiarity with BLE/Wifi/etc IoT communication protocols
4. Familiarity with major third party platforms for cloud and ML/AI integration
5. Testing actual physical outcomes of programmed solutions
6. Deep familiarity with ESP-IDF
Location : IIT Bombay, Mumbai
Working mechanism : In-person
Compensation range : 4-12 lpa + ESOPs
Hyperspec is building a real time local map for self-driving cars and using cross view localization to enable ubiquitous autonomy. Hyperspec is a VC funded startup.
The principal embedded systems engineer will have deep expertise in embedded systems design, development and worked for years on embedded systems teams. This person is a leader and mentor to junior engineers and shares knowledge about the design and development of embedded systems.
- Serves as an expert in all aspects of embedded projects and embedded systems—including designing, developing, testing, and perfecting designs
- Responsible for updating and working with executive leadership on the development of embedded systems and status of projects
- Provides guidance and mentoring to other members of the team
- Minimum of bachelors' degree in computer science or engineering
- At least ten years of engineering experience with expertise in software engineering, data structures, and programming techniques
- Deep expertise in C/C++ programming
- Experience with FPGAs, PCB, Xilinx, Altera, or similar SoCs.
- Experience with ISPs, Cameras, Switches a plus.
- Experience in working with real-time operating systems, communications protocols and firmware design.
- Experience in interfaces, IP protocols, and hardware subsystems.
- Experience in working as part of a team and leading teams.
Senior BLE Firmware Software Engineer
https://espressif.com/">Espressif Systems (688018) is a public multinational, fabless semiconductor company established in 2008, with headquarters in Shanghai and offices in Greater China, India and Europe. We have a passionate team of engineers and scientists from all over the world, focused on developing cutting-edge WiFi-and-Bluetooth, low-power IoT solutions. We have created the popular ESP8266 and ESP32 series of chips, modules and development boards. By leveraging wireless computing, we provide green, versatile and cost-effective chipsets. We have always been committed to offering IoT solutions that are secure, robust and power-efficient. By open-sourcing our technology, we aim to enable developers to use Espressif’s technology globally and build smart connected devices. In July 2019, Espressif made its Initial Public Offering on the Sci-Tech Innovation Board (STAR) of the Shanghai Stock Exchange (SSE).
Espressif has opened a Technology Center in Pune (Baner), India, which will focus on embedded software engineering and IoT solutions development for our growing customers.
About the Role
Espressif is looking for Embedded Software Engineers to join the software department located in India. You will work in a diverse team where your colleagues are from Czech, Russia, India, Australia and so forth. Here, you get a chance to be a member of the core team in Espressif and work with talented engineers from all over the world.
The BLE Firmware Development Team is now focused on the development of the Bluetooth 5.x standard and BLE Mesh standard.
BLE FW Team is looking for a self-starting, high-technical, energetic individual with keen attention to details. The Candidate will be actively involved in:
- Development of Bluetooth Low Energy (BLE) Firmware for Espressif Bluetooth chips.
- Development of new firmware for BLE latest specification (BLE 5.x, BLE Mesh, etc).
- Development of BLE chip validation and Bluetooth Qualification.
- Research of cutting-edge and challenging Bluetooth technologies (BLE Audio, BLE Direction Finding, Next-Generation BLE Chip, etc).
- Supporting the existing firmware through feature additions, enhancements and maintenance.
- Working with systems team and cross-functional teams to deliver quality software following well-established software development processes.
- Resolving issues as reported by internal test teams as well as customers.
- Bachlor's degree or above in Electronic Engineering, Communications Engineering, Automation or other related majors
- Familiarity with Bluetooth Low Energy (BLE) protocol or BLE Mesh protocol
- Proven experience in developing BLE stack / firmware (2+ years, both BLE host and controller) or BLE Mesh stack (2+ years)
- Experience with software engineering processes and the full software development lifecycle including requirements, design, implementation, testing, and documenting in Continuous Integration environment
- Strong experience and proficiency in C programming (3+ years) for embedded platforms required
- Excellent problem solving and debugging skills
- Experience in developing BLE profiles and BLE applications (e.g. HID, ANCS, Homekit, etc)
- Good understanding of other networking protocol stacks is highly desired (e.g. Zigbee, IEEE 802.11, UWB, Lora, NB-IoT, etc)
- Strong Real-time systems and software engineering skills required (e.g. FreeRTOS, etc)
- One or more scripting languages (e.g. Python, etc)
- Experience with variety of software productivity tools (e.g. Git, Jira, etc)
What to expect from our interview process
- The first step is to email your resume or apply to the relevant open position, along with a sample of something you have worked on such as a public GitHub repo or side project etc.
- Next, post shortlisting your profile recruiter will get in touch with you via a mechanism that works for you e.g. via email, phone. This will be a short chat to learn more about your background and interests, to share more about the job and Espressif, and to answer any initial questions you have.
- Successful candidates will then be invited for 2 to 3 rounds of technical interview as per previous round feedback.
- Finally, Successful candidates will have interview with HR.
What you offer us
- Ability to provide technical solutions, support that fosters collaboration and innovation.
- Ability to balance a variety of technical needs and priorities according to Espressif’s growing needs.
What we offer
- An open minded, collaboration culture of enthusiastic technologist.
- Competitive salary
- 100% company paid medical/dental/vision/life coverage
- Frequent trainings by experienced colleagues and chances to take international trips, attend exhibitions, technical meetups and seminars.
Embedded System Engineer
Working on Embedded programming on the microcontroller, Linux/Android OS development
Working on component sourcing, PCB Design and fabrication
Working on assembly and testing
Working on field deployment and Testing
Must be exceptionally good in Embedded Systems C programming, testing/ debugging and in advanced C concepts
Capable of working in Embedded Systems based projects based on 8 and 32 bit microcontrollers (STM32)
Experience with communication protocols and peripherals like UART, SPI, RTC, Ethernet
Hands on experience in IDE like Keil, AVR Studio, MPLAB
Strong documentation and writing skills
1-3 years preferable, fresher with good embedded system knowledge can also apply
• Hands on experience and a certified Cloud Practitioner (Azure)
• Expertise in GitLab, CI/CD, DevOps and Terraform
• Experience in .Net Core (C#), fluency in ASP.NET and Microsoft .NET stack Hands on experience in ReactJS, Typescript, Bootstrap 4, Storybook, Responsive Design, CSS and Design Systems
• Experience with Relational database, database concepts and be able to write complicated database queries, preferably PostgreSQL
• Experience in Docker and Kubernetes
• Knowledge in Swagger and OpenAPI Standards
• Experience in Unit testing, Integration and E2E testing with automation tools Experience in manage Release process and deployments to higher environments like QC, UAT and Prod
• Experience building large-scale business critical applications