Senior Software Engineer
IndiaYesterday
Free account needed to apply or save. It takes a minute, and we'll bring you right back to this job.
How well do you match this job?
Key details
- Location
- India
- Work style
- Remote
- Level
- Senior
- Job type
- Full-time
- Experience
- 5–8 yrs
- Function
- Software engineering
- Focus area
- other
- Posted
- Yesterday
Skills
About the role
This position is listed on behalf of a partner company, who manages all applications and next steps. Our partner is looking for a Senior Software Engineer based in India.
As a Senior Software Engineer, you will help build and optimize the virtualization technologies powering large-scale cloud computing infrastructure. You will work on the virtualization stack, Linux kernel capabilities, and host-level software to improve performance, scalability, and reliability. Collaborating with a closely connected engineering team, you will contribute to innovative solutions and help bring new products to market. You will take ownership of complex technical challenges, evaluate open-source technologies, and translate new ideas into production-ready systems. Beyond hands-on development, you will provide technical guidance and support team growth through mentoring and knowledge sharing. This remote opportunity offers the chance to contribute to distributed cloud infrastructure and next-generation computing services.
Accountabilities
-
Develop and enhance the virtualization stack, including QEMU, QAPI, and QMP, with a focus on virtual machine optimization.
-
Leverage Linux kernel features to improve hypervisor performance, efficiency, and overall stack functionality.
-
Research, evaluate, propose, and integrate relevant open-source projects in alignment with product objectives.
-
Design, develop, and maintain software running on host systems across large-scale data centers.
-
Optimize system performance, resource utilization, and virtualization capabilities in distributed production environments.
-
Apply technical expertise to solve complex engineering challenges and contribute to architectural and implementation decisions.
-
Provide technical leadership and guidance to other engineers, promoting high standards of software quality and engineering excellence.
-
Support team development through hiring, onboarding, training, coaching, and mentoring.
-
Collaborate with engineering colleagues in an agile environment to deliver innovative solutions and contribute to new product development.
-
At least 5 years of relevant software engineering experience working on optimized software in large-scale distributed production environments.
-
Bachelor's degree in Computer Science or a related field.
-
Experience developing software involving the Linux kernel and systems-level technologies.
-
Strong understanding of Linux internals, including processes, threads, cgroups, and resource management.
-
Experience with Python and the ability to write clean, efficient, well-organized, and well-documented code.
-
Knowledge of virtualization technologies and the ability to work with hypervisors and virtual machine optimization.
-
Familiarity with QEMU, scheduling, live migration, memory organization, APIs, and debugging is an advantage.
-
Understanding of NUMA architecture, CPU topology, memory locality, and scheduling mechanisms.
-
Experience designing software architectures, translating concepts into technical solutions, and taking projects through implementation.
-
Ability to identify and resolve complex technical challenges using strong analytical and problem-solving skills.
-
Knowledge of Go or Perl is an advantage.
-
Strong communication and collaboration skills, with the ability to provide technical guidance and mentor other engineers.
-
Curiosity, initiative, and a commitment to continuous learning and technical excellence.
-
Remote working opportunity based in India.
-
FlexBase workplace flexibility, allowing employees to work from home, from an office, or through a combination of both, depending on role requirements.
-
Benefits supporting health, well-being, financial security, and life beyond work.
-
Opportunities to work on large-scale cloud computing, virtualization, and distributed infrastructure technologies.
-
Collaborative and agile engineering environment that encourages innovation, curiosity, and technical excellence.
-
Opportunities for professional development, technical leadership, and mentoring.
-
Opportunity to contribute to products and infrastructure supporting global digital experiences.
In this role, you will design, develop, and optimize systems software that supports large-scale computing environments. Your responsibilities will include:
Requirements
The ideal candidate combines strong systems programming experience with a deep understanding of Linux internals, virtualization, and distributed computing environments. You should be comfortable designing complex software architectures, solving performance challenges, and contributing both independently and collaboratively. The following qualifications are expected: