Job opportunity

Senior Software Engineer - Customer Engineering

Who are you?

You are a Software Development Engineer who needs to take the next step in your career. You want to remain technically hands-on while moving closer to the product and customers. You may be looking to move into Product Management or maybe to develop your own start-up later in your career.

Job duties

As an Undo expert, you will work closely with our strategic customers.

Product deployment

■ With your expertise in C/C++, Python, Operating Systems, and Linux Internals, you will enable the deployment of Undo’s time travel debugging technology, which allows customers to reduce their MTTR, deliver changes at velocity, and fix software defects in test and in the field.

■ Knowledge of debugging information: Symbols, Source, and build systems will be valuable in working with customers.

Product support / customer training

■ Assist and train Undo’s customers in improving their development productivity through the use of our time travel debugging technology.

■ Provide and coordinate support for customers in their implementation of our technology, verifying that their workflows are efficient and meet their expectations.

■ Help Undo improve our understanding of Networking, Database, and EDA customers’ workflow and technical needs.

Product development

■ Understand customers’ impressions of Undo’s technology and provide this feedback for decision-making related to infrastructure/features/workflows.

■ Collaborate with the Product Development team to improve Undo’s solutions and customers' experience in using our technology, by trialling solutions and workflows in the field.

● Work directly with the Undo R&D, Solutions, Customer Success, and Product teams to understand customer requirements and influence the direction of Undo’s products and workflows.

Required experience

At least 5 years' software development experience, preferably in a networking, EDA, or data management software company.

Key technical skills

● C/C++

● Python

● Linux internals

● Operating Systems

Optional technical skills

● Debugger or compiler internals

● x86, ARM, or other assembly


Required: Bachelor of Technology or Bachelor of Science in Computer Science or similar subject. 

Preferred: Master of Science or Master of Technology in Computer Science.

Working style

Undo is a team-oriented company. A development team makes a collective commitment to achieve an agreed shared goal within agreed time and quality parameters. Responsibility is shared among the members of the group.

Commitments are decided upon by the team itself, not thrust upon it.

Individual developers are empowered to pick the work they would like to do within the team’s committed goals: tasks are not assigned to them - they pick them.

Undo encourages team members to keep a good work/life balance and strives not to depend on personal heroism to achieve corporate goals. We are flexible and will go to some lengths to ensure working conditions are conducive to happiness.


Undo looks for team players. You need to feel ownership of the team’s goals, not just your own.

Because of our culture, team decision-making is essential. A team member should expect to participate in open discussions, challenge and be challenged with arguments based on reason, and occasionally compromise to achieve team consensus.

Senior roles like this require the ability to influence other people to achieve non-trivial goals.

Trust, honesty, and respect for others are essential, as are enthusiasm and drive.

Apply now

We are making Undo a place to work of which we can all be really proud.

About Undo