Member of Technical Staff C++ at VMware Software India Pvt. Ltd · Bengaluru (Bangalore) · 2 - 7 years · ₹20L - ₹30L / yr (ESOP available) · Profitable · Posted 1 Jun 2021
Exciting opportunity for a MTS 3 in our Blockchain Engineering team. You will be working with a team of engineers dedicated to making the VMware Blockchain Platform the dominant Enterprise Blockchain solution.
At VMware, we are building an Enterprise Blockchain with innovation, enterprise-grade capability, and solutions that will power blockchain in every market sector.
You will work with a team of talented and supportive individuals from across the world as well as members of the academic community and VMware’s Research Group in this role. Our team values diversity, collaboration, and open thought while supporting VMware’s EPIC2 values.
Are you ready for your next great challenge with the Blockchain Engineering team in VMware?
Responsibilities
- Contribute to implementation of an enterprise blockchain solution. This includes but is not limited to work on the Byzantine Fault Tolerant State Machine Replication layer, work on the execution engine and smart contract layer and work on the ledger layer.
- Collaborate effectively with other engineers and researchers to solve complex problems
- Collaboration with cross functional teams involved in the product delivery
- Working with global team in different geographical locations
Requirements
- Knowledge of modern software development methodologies.
- Deep understanding of distributed computing concepts in practice
- Ability to work independently and work collaboratively in a team environment,
including quickly getting up to speed with new technologies.
- Strong development experience in C++( v11 and higher) in Linux
- Expertise in one of the following: distributed systems, security/cryptography
- Proficient organizational skills with the ability to lead challenging demands.
- Experience with leading the everyday activities of a global engineering team using Agile/Scrum processes.
Who you are:
- Self Starter – Thrive in a fast paced and changing environment.
- Strong collaboration skills with a “Team First” mentality.
- Technical engineering excellence, innovation in everything you do.
- “Growth” mindset in tackle problems and creating great solutions.

Similar jobs (10)
Job Title : Software Engineer (.NET, Azure)
Location : Remote
Employment Type : [Full-time/Contract]
Experience Level : 3+ Years
Job Summary :
We are looking for a skilled Software Engineer (.NET, Azure) to develop high-quality, secure, and scalable software solutions. You will collaborate with product owners, security specialists, and engineers to deliver robust applications.
Responsibilities :
- Develop and maintain server-side software using .NET (C#), SQL, and Azure.
- Build and secure RESTful APIs.
- Deploy and manage applications on Azure.
- Ensure version control using Azure DevOps/Git.
- Write clean, maintainable, and scalable code.
- Debug and optimize application performance.
Qualifications :
- 3+ Years of server-side development experience.
- Strong proficiency in .NET, SQL, and Azure.
- Experience with RESTful APIs and DevOps/Git.
- Ability to work collaboratively and independently.
- Familiarity with Scrum methodologies.

Job Details:
- Role: Senior Staff Engineer, Java, Node JS
- Experience: 7.5 -9 Years
- Employment Type: Full-time
- Work Mode: Bengaluru (Onsite- 5 days)
Job description
REQUIREMENTS:
- Strong experience in Backend Engineering, Microservices, and Distributed Systems
- Deep hands-on expertise in Java and Node.js development
- Strong experience in designing and developing RESTful APIs and backend services
- Strong understanding of OOP, Data Structures, Algorithms, and Software Design Principles
- Hands-on experience with PostgreSQL, MongoDB, or similar databases
- Experience with system design, scalability, fault tolerance, and performance optimization
- Experience with Redis, messaging systems, and event-driven architectures
- Hands-on experience with Git, automated testing, CI/CD, Docker, and Kubernetes
- Strong understanding of API security, authentication, and authorization
- Experience with observability, monitoring, and production support
- Strong troubleshooting, analytical, and problem-solving skills
- Experience working in Agile/Scrum environments
- Excellent communication and stakeholder management skills
- Experience with Spring Boot, TypeScript, NestJS, Kafka, and AI-assisted coding tools is preferred
RESPONSIBILITIES:
- Design, develop, and maintain scalable backend services, microservices, and APIs
- Build high-performance RESTful and event-driven applications
- Own system design, data models, integrations, scalability, and reliability
- Collaborate with product and engineering teams to deliver business solutions
- Write clean, secure, maintainable, and well-tested code
- Conduct code reviews and mentor junior engineers
- Troubleshoot production issues and perform root cause analysis
- Improve CI/CD pipelines, monitoring, logging, and operational practices
- Optimize application performance, database efficiency, and system scalability
- Participate in architecture discussions, design reviews, and technical decision-making
- Implement security best practices and engineering standards
- Support platform modernization and continuous improvement initiatives
- Leverage modern development tools and AI-assisted coding practices to improve productivity
- Participate in Agile ceremonies and collaborate with cross-functional stakeholders
- Ensure delivery of high-quality, reliable, and scalable backend solutions.
Qualifications
Bachelor’s or master’s degree in computer science, Information Technology, or a related fields
As a C++ developer working in front office electronic trading, your role involves developing and maintaining software solutions for trading systems used in financial markets. Here are some key aspects of your responsibilities:
C++ Programming: Mastery of the C++ programming language is essential, as most trading systems are built using C++ due to its performance and efficiency.
Electronic Trading Systems: You'll work with electronic trading systems that execute trades automatically based on predefined algorithms or user instructions. Understanding order execution, order management, and market data processing is crucial.
Multithreading: Multithreading is vital in electronic trading systems to handle concurrent tasks efficiently. You'll need to design, implement, and debug multithreaded applications to ensure optimal performance and reliability.
Low-Latency Systems: Electronic trading often requires low-latency systems to execute trades swiftly. You'll optimize code and algorithms to minimize latency and ensure timely order execution.
Algorithmic Trading: Knowledge of algorithmic trading strategies and implementing them in software is advantageous. This includes understanding mathematical models, statistical analysis, and risk management.
Networking: Understanding network protocols and communication is necessary for connecting trading systems to exchanges, brokers, and other financial institutions. This involves working with TCP/IP, UDP, and messaging protocols like FIX (Financial Information Exchange).
Risk Management: You'll implement risk controls and safeguards in trading systems to prevent erroneous trades or mitigate risks associated with market volatility.
Testing and Debugging: Thorough testing and debugging are crucial to ensure the reliability and stability of trading systems. You'll write automated tests, perform manual testing, and debug issues to maintain system integrity.
Performance Optimization: Continuously optimizing the performance of trading systems is essential to handle increasing trading volumes and maintain competitiveness. This involves profiling code, identifying bottlenecks, and applying optimizations.
Regulatory Compliance: Adhering to regulatory requirements and standards in the financial industry is critical. You'll ensure that trading systems comply with regulations such as MiFID II, Dodd-Frank, and others applicable to electronic trading.
Collaboration: Working closely with traders, quants, risk managers, and other stakeholders to understand requirements and implement solutions that meet business needs.
Documentation: Maintaining clear and comprehensive documentation for code, algorithms, and system architecture is important for knowledge sharing and compliance purposes.
Overall, being a C++ developer in front office electronic trading requires a strong technical foundation, attention to detail, and the ability to work effectively in a fast-paced and demanding environment.
Job Title: Senior Linux Kernel Engineer
Experience: 5–10 Years
Location: Bangalore / Chennai
Domain: Enterprise Linux / Kernel Development
Job Summary
We are seeking a highly skilled Senior Linux Kernel Engineer with deep expertise in kernel development, debugging, and performance optimization. The role involves working on enterprise-grade Linux distributions, kernel lifecycle management, security patching, and low-level hardware integration.
Key Responsibilities
1. Kernel Lifecycle & Maintenance
- Lead kernel upgrade strategies (e.g., LTS migrations such as 5.15 → 6.x) while ensuring stability and compatibility.
- Perform patch porting across kernel versions, resolving API and dependency conflicts.
- Track and mitigate security vulnerabilities by monitoring CVEs and upstream sources (e.g., LKML).
- Backport critical fixes to production kernels without impacting system stability.
2. Debugging & System Stability
- Act as an escalation point for kernel panics and system crashes.
- Perform post-mortem analysis using kdump, crash, and gdb.
- Debug early boot issues (UEFI, initramfs, kernel initialization).
- Conduct performance analysis using eBPF, ftrace, and perf to optimize system behavior.
3. Driver Development & Hardware Integration
- Design, develop, and maintain device drivers (network, storage, GPU, or character devices).
- Work closely with hardware through DMA, interrupts (MSI-X), and register-level programming.
- Maintain out-of-tree drivers using DKMS or similar frameworks.
- Ensure compatibility of drivers across kernel updates.
Required Technical Skills
- Programming: Strong expertise in C (mandatory) and C++
- Kernel Internals: Deep understanding of:
- Virtual File System (VFS)
- Memory Management (MMU, Paging)
- Process Scheduler
- Linux Networking Stack
- Debugging Tools:
- kdump, crash, gdb
- kprobes, trace-cmd, ftrace
- perf, valgrind
- Hardware debugging tools (JTAG, Serial Console)
- Build Systems:
- Kbuild, Makefiles
- Kernel packaging (RPM/Debian)
- Security:
- Experience with CVE patching and backporting
- Knowledge of SELinux/AppArmor
- Kernel hardening (FIPS, KSPP)
Preferred Skills
- Experience contributing to open-source kernel projects
- Familiarity with Linux Kernel Mailing List (LKML) workflows
- Exposure to enterprise Linux distributions (RHEL, Ubuntu, SUSE)
- Experience with performance tuning and system optimization at scale
1. Core Programming (C Language)
- Must have strong hands-on experience in C programming
- Comfortable with pointers, memory management, and low-level concepts
2. Kernel Internals Expertise
- Should have worked in at least one subsystem:
- VFS / File Systems
- Memory Management
- Scheduler / Networking
3. Debugging & Crash Analysis
- Experience handling kernel panics
- Hands-on with vmcore analysis tools
4. Security & Patching
- Understanding of CVE fixes and backporting
5. Driver Development
- Experience in writing or maintaining device drivers
6. Performance & Advanced Debugging
- Exposure to eBPF, ftrace, perf
7. Hardware-Level Understanding
- Knowledge of DMA, interrupts, hardware interaction
Soft Skills
- Strong analytical and problem-solving abilities
- Excellent communication skills
- Ability to work independently and in collaborative environments
- Quick learner with adaptability to new technologies
Job Summary:
We are looking for a highly skilled and experienced C++ Developer with a strong background in embedded systems to join our dynamic product engineering team. The ideal candidate will have at least 5 years of recent hands-on experience in designing, developing, and optimizing high-performance embedded software applications using modern C++ standards (preferably C++11 or later). This is an exciting opportunity to work on cutting-edge technologies in a collaborative and innovative environment.
Key Responsibilities:
- Design, develop, and maintain robust and scalable software solutions using C++11 or above
- Work closely with hardware and embedded teams to implement and integrate real-time systems
- Develop software for embedded platforms and optimize performance for various target environments
- Implement and maintain multithreaded applications and handle concurrency issues efficiently
- Conduct unit and integration testing to ensure high-quality deliverables
- Collaborate with cross-functional teams including Product, QA, Hardware, and Design
- Troubleshoot, debug, and resolve complex technical issues in embedded environments
- Participate in code reviews and adhere to best practices in coding and documentation
- Stay updated on the latest advancements in C++ and embedded systems development
Required Skills & Qualifications:
- Bachelor's or Master’s degree in Computer Science, Electronics, or related field
- 5+ years of professional software development experience with strong recent exposure to C++
- Hands-on experience with C++11 or newer versions (C++14/17 preferred)
- Strong understanding of object-oriented programming (OOP) and software design patterns
- Proficient in embedded system programming and real-time operating systems (RTOS)
- Experience in multithreaded programming and inter-process communication
- Proficient in debugging tools, performance analysis, and memory management
- Familiarity with version control systems like Git
Preferred Skills:
- Experience working on low-level drivers, hardware integration, and peripherals
- Familiarity with scripting languages (Python, Bash) for automation
- Exposure to CI/CD pipelines and Agile/Scrum development methodologies
- Knowledge of tools such as GDB, Valgrind, JTAG debuggers, etc.
- AWS or cloud-based experience is a plus (for remote monitoring/logging or OTA updates)
Hi,
We are hiring for the position of Java Tech Lead. Please find below the details for the same.
A passionate developer who has a strong working knowledge of OOPS and functional programming
principles. Standard Definitions and abbreviations don't entice us that much.
Key skills:
• Strong Java and J2EE background with 5-7 years of experience.
• Strong working experience in Multi-Threading, Exception Management and the Use of Collections.
• Sound knowledge of working with application aspects i.e., Caching, Asynchronous APIs, Logging etc.
• Experience with web application frameworks like Spring Boot or Dropwizard.
• Unit Testing is an everyday affair and hence demands very good unit testing skills using tools like Junit & TestNG.
• Understanding of relational databases, RESTful services, and build tools like Maven & Gradle
• Knows what and when to mock and has used frameworks like Mockito/Power Mock.
• Understanding of message queues such as ActiveMQ, Kafka, and RabbitMQ.
• Version Control is treated as important as programming skills. Fluent with version control tools like Git and Bitbucket.
• Exposure to Agile/Scrum, TDD not in theory but in practice.
• Experience with Continuous Integration, Continuous Deployment, Static Code Analysis, Jenkins and SonarQube.
• Willingness to take ownership of the technical solution and ensure technical expectations of deliverables are met.
• Strong communication skills along with the ability to articulate technical designs and concepts.
• Exposure to cloud and containerization would be a plus.
• Hands-on experience in application development in an enterprise setup.
• Have a good understanding of Distributed Application Architecture.
Signalling, interlocking system
• Participate in Requirement Analysis and Design activities
• Develop code, unit testing, integration testing
• Perform module integration and integration testing
• Prepare and review Test Reports
• Actively participate in technical meetings and share ideas clearly
• Manage a team of engineers and provide leadership with clear communication
• Good at documentation
• And any other project related activity assigned
Company Profile
Prescinto is a VC funded SaaS company in the renewable energy space enabling digital transformation for customers across the globe.
Prescinto provides solutions to improve power generation for Renewable energy power plants by identifying areas of underperformance and lost generation opportunities through patent pending methodologies; systematically addressing these through an automated workflow system to improve power generation for our customers.
This is achieved by leveraging the IoT and Analytics platform built to collect high frequency data from distributed renewable energy assets and the comprehensive data lake.
Roles & Responsibilities
You are responsible for understanding the product architecture and Design laid out by the Architect and Develop product features in alignment with the architecture.
Product is built on Microsoft stack with Angular 11, .NET and data residing in MS SQL Server and InfluxDB, mobile application built on Flutter and data lake deployed on Azure environment. It extensively uses multi-threading for parallel processing, stored procedures for data access and leverages time-series database for storing high frequency equipment data.
In this role, you should be able to work independently as well as work with vendor and junior members to collaboratively build the features and take them to production. You need to be both a big picture thinker and in-depth problem solver, your knowledge and skills are both broad and deep.
Do you take pride in building customer centric functionalities with an eye on performance? Are you remembered for the quality of your code? This position is for you.
Desired Skills & Experience
- 8+ years of Product development experience of which at least 2 years should comprise of working independently with minimal supervision and guidance
- Experience with at least one full cycle development of product features from requirements to Production deployment to Post production support is critical
- Excellent Programming Skills using C#, WPF, MVVM, Winforms, .NET Framework, Windows Communication Foundation (WCF), ASP.net web api, SQL Server, Store Procedure, Triggers
- Solid Understanding of Multi-Threading and Parallel Programming
- Excellent understanding of Windows Operating System Internals (Process, Threads, Memory Management).
- Clear understanding of OOP and OOAD
- Excellent application debugging skills using Visual Studio Debugger
- Strong knowledge in design patterns, data structures and algorithms
- Experienced in developing Windows desktop applications
- Ability to work independently and be self-driven
- Should have knowledge on code repositories like SVN, GitHub etc and Agile tools like JIRA
- Should have excellent communication skills, excellent analytical and problem-solving skills
- Have working experience in Test-driven Development and Test Automation experience in third party control like DevExpress, Telerik WPF controls
- Experience building a SaaS product preferable
- Startup experience preferable
Building highly-scalable and secure payments platform
Primary owners of one or more components of the platform and will drive
innovation in your area of ownership
Working with various product teams gathering requirements and adding capabilities
Working with some of the smartest people in the industry and will have ample
opportunity to learn and grow
Using cutting-edge cryptography to secure payments beyond industry standards
Deriving actionable insights by mining TBs of data
Building low-level infrastructure that aims to push the boundaries of network
performance
Participating actively in recruitment and nurturing of engineers as awesome as you.
What do we look for?
If you spend time cracking NP hard problems rather than cracking nuts, you are the
most laziest person and automates everything, you appreciate beauty of code
(bonus if you can sing “Finite simple group of order 2”), you should apply in t=0
Good understanding of Databases
Good understanding of networking (especially with HTTP)
Good understanding of OS concepts
2-4 years of experience
Should have hands on development experience with Object Oriented Programming
(Java is highly preferred) on a large scale system
Understands and showcase ownership of the products
Good with concepts of scaling and worked with distributed systems
Review and influence new evolving design, architecture, standards and methods
with stability, maintainability and scale in mind
Identify patterns and provide solutions to class of problems
Research, evaluate and socialize new tools, technologies, and techniques to improve
the value of the system
Be able to multi-task, prioritize and handle dependencies with minimal oversight
About the Role
If you are interested in developing the future architecture of Uber's Rider stack by building its core building blocks, join the Rider Backend Platform team. We build backend architectural components and frameworks comprising of services, libraries, state storage and other building blocks that aim to optimise the core Rider flow and foundational features that are shared among all rider products, including but not limited to, Uber Rider app, UberLite, m.uber.com, etc.
What You'll Do
- Work with Rider product engineering teams to identify, design and build solutions that help scale Rider services and platforms.
- Drive adoption of best practices in code health, testing, and maintainability
- Analyze and decompose complex software systems and collaborate with cross-functional teams to influence design for scalability and testability
- Work with smart and motivated teammates in a fast-paced, collaborative environment.
- Build elegant backend platform components for high throughput and low latency distributed systems.
- Solve challenging problems with cutting edge design and algorithms.
What You'll Need
- 4+ years Strong meaningful Individual contributor experience as a software engineer
- Design: Knowledge of data structures and an eye for design. You can discuss the tradeoff between design choices, both on a theoretical level and on an applied level.
- Strong coding/debugging abilities: You have advanced knowledge of at least one programming language, and are happy to learn more. Our core languages are Go and Java.
- Fast learner: We're looking for software engineers who thrive on learning new technologies and don't believe in one-size-fits-all solutions. You should be able to adapt easily to meet the needs of our massive growth and rapidly evolving business environment.
- A team player: You believe that you can achieve more on a team -- that the whole is greater than the sum of its parts. You rely on others' candid feedback for continuous improvement.
-
Business acumen: You understand requirements beyond the written word. Whether you're working on an API used by other developers, an internal tool consumed by our operation teams, or a feature used by millions of customers, your attention to details leads to a delightful user experience.
About the Team: **Rider Backend Platform**
Builds the core building blocks needed to power the rider experiences on the different Rider facing apps including the core Uber app, Uber Lite, Web as we move on to become the preferred transportation platform for millions of riders all over the world.
Uber
At Uber, we ignite opportunity by setting the world in motion. We take on big problems to help drivers, riders, delivery partners, and eaters get moving in more than 600 cities around the world.
We welcome people from all backgrounds who seek the opportunity to help build a future where everyone and everything can move independently. If you have the curiosity, passion, and collaborative spirit, work with us, and let's move the world forward, together.









