Job Description

Software Engineer: Expanding our Virtual Data Lake

Published on: 27 October 2021


About us

Roseman Labs is a deep-tech company with an innovative analytics solution that guarantees data privacy. With our Virtual Data Lake it is possible to perform analyses across data sources, without those sources revealing data to each other. We have a solid customer base and are growing fast. 

The role

We are looking for a software engineer with excellent Modern C++ and Python skills, responsible for building our Virtual Data Lake (VDL) application and application interface. The VDL includes a core written in Modern C++ that includes a task scheduler, networking, storage and arithmetic facilities, and implementations of multi-party cryptographic primitives, built and maintained by our cryptography team. Your primary role is to support the design and development of the broader application and the application API, and to coordinate with the rest of the team working on different layers of the infrastructure.

Details of the role

What we look for:
• Hands on
• Problem solver
• Solid theory foundation
• Passion for delivering quality
• Strong communicator
• Pro-active

• Design, write, and maintain efficient, reusable, and reliable Modern C++ and Python code for the Linux environment
• Help with system design, thereby collaborate with cryptography team and business development team
• Help with the architectural part of user interface design, and its connection to the back-end system
• Implement monitoring capabilities
• Devise solutions to challenging problems, like defining data formats, tackle database-related design questions, performance benchmarking and optimization, designing for cloud-deployment, etc
• Help maintain code quality, organization, and automation

• Strong understanding of Modern C++ (std library, concepts, rvalues/lvalues, RAII, stack vs heap based memory, generic programming, etc)
• Knowledge of Python, and Python-based tools/libs for data processing, machine learning (eg Scikit learn, pandas)
• Good understanding of algorithms, and of the basic concepts of machine learning
• Knowledge of modern tools, like clang/gcc, sanitizers (ASan, UBSan), performance benchmarking (linux perf, Google benchmark)
• Experienced with using and developing for Linux
• Knowledge of the UNIX networking stack (TCP, sockets, etc)
• Understanding of Git version control system
• Strong interest in cryptography and privacy tech is a plus

We offer attractive employment conditions that suit a start-up in this phase, participation is an option. We mostly work remotely.

Interested? Email us!