Software Engineer (C++) at Nexthink
Nexthink is a global leader in Digital Employee Experience. Our product allows enterprises to create highly productive digital workplaces for their employees by delivering optimal end-user experience. Through a unique combination of real-time analytics, automation and employee feedback across all endpoints, Nexthink helps IT teams meet the needs of the modern digital workplace.
Headquartered in Switzerland, Nexthink also has offices in France, UK, Germany, Spain, UAE, Saudi Arabia, Australia and the US. Our growing team of Nexthinkers is proud to be making the digital work lives of seven million employees across 1,000 customers more productive.
Thanks to our fantastic growth we are looking for new rock stars!
We are looking for enthusiastic Software Engineer for developing our in-memory time series database that is at the core of our technology stack.
The position entails a high level of responsibility within the R&D team. Your contribution will have a significant impact on the satisfaction of hundreds of our customers.
You are highly motivated and result driven, you are able to work as part of a team, constantly learning and enhancing your skills and you are open to feedback. You like being accountable and have a high sense of product ownership.
If it’s the case then no need to look elsewhere, you reach the right place !
Your main duty will be development of new exciting features on our time series database which has to compute complex queries over the data collected from hundred thousand of endpoints during months period in a matter of seconds. There are many algorithms and optimizations which still have to be done or can be improved: you can expect to work in constantly challenging environment.
We take very seriously the quality of our solution, and therefore the candidate shall expect to write many unit, functional and performance tests. The core functionality of the component is implemented in C++ and we use the most recent version of C++ standard. Most of the functional testing is done in Python, so you will need to use Python on daily basis.
- Design, implement and improve complex algorithms and functionality for our time series database
- Ensure high quality of the product by writing unit, functional and performance tests
- Perform code reviews
- Help QA teammates in their day to day job to solve the issues raised by our dear Level 3 support
- Participate in the product release delivery process
- Participate in agile activities (e.g., standups, sprint planning, grooming)
- Seniority level: Mid-Senior Level
- Function: Engineering
- Mid to Senior profiles with experience in C++ development
- BSc in Computer Science (or equivalent)
- C++ proficiency
- Understanding of most common data structures and algorithms
- High motivation for designing new algorithms and data structures
- Understanding on how to write performant and maintainable code
- Good understanding of multi-threaded environment
- Excellent communication and teamwork skills
- Professional-level English spoken and written
Would be a plus:
- Idiomatic Python skills
- Excellent knowledge of programming in GNU/Linux environment
- Deep TCP/IP knowledge
- C++17 knowledge
- Experience with LLVM compiler infrastructure
- Knowledge or experience in Rust language