Signaloid provides a computing platform that tracks data uncertainties dynamically and throughout computations in execution workloads. Our computing platform uses deterministic computations on in-processor representations of probability distributions, to enable orders of magnitude speedup and lower implementation cost for computing tasks traditionally solved using Monte Carlo methods. The platform is available as a cloud-based computing engine that lets you run tasks via a cloud-based task execution API. We also provide on-premises and edge-hardware implementations of our computing platform for customers who want to use their existing on-site infrastructure and for use cases requiring operation without connection to the cloud.
Our platform is the most cost-effective way to engineer uncertainty quantification applications and is also the fastest way to run uncertainty quantification tasks, for key use cases. Workloads ranging from options pricing and portfolio modeling in finance, to uncertainty quantification for materials modeling and photonics simulation in engineering, often run an order of magnitude or more faster, compared to Monte-Carlo-based implementations running on high-end AWS EC2 instances.
Our team consists of contrarian engineers with combined research, engineering, and leadership experience from Apple, ARM, Bell Labs, CMU, University of Cambridge, IBM Research, MIT, NEC Labs, and University of Oxford. Find out more and try out the Signaloid uncertainty-tracking computing platform by signing up for free for our developer platform, at
Role Description
In this role, you will be responsible for delivering performance improvements throughout the lower levels of Signaloid's technology stack. Your contributions will range from interfacing with custom silicon and FPGA accelerators, to delivering algorithmic improvements to the higher-level software layers of the stack.
To succeed in this role, you will be someone who has the following attributes:
* Self-motivation, with a proven track record providing technical leadership to your peers.
* A proven track record of working as an individual contributor delivering engineering implementations in both hardware and software.
* An ability to communicate clearly and concisely while conveying empathy.
* An ability to take initiatives while actively working to understand the reality and constraints of your environment.
Within a year in this role, you can expect to:
* Work more closely within the leadership team to set and deliver the long-term technology strategy of the company.
* Propose and lead new technology initiatives within the company.
* Have the opportunity to contribute to and explore other opportunities within Signaloid based on your demonstrated performance.
Requirements
* Strong background in computer architecture (microarchitecture, memory systems, performance evaluation).
* Strong background in algorithms (computational complexity analysis, algorithm implementation strategies, effects of hardware properties on algorithm performance).
* 5-10 years experience with low-level C/C++, with a thorough understanding and experience optimizing software to the constraints of hardware.
* Demonstrated ability to lead the delivery of a product.
* A willingness to listen to people until they feel understood.
* Honesty, empathy, and a willingness to see the world from the viewpoint of others.
Additional Desirable Attributes, Skills, and Experience:
* Interest and experience with the challenges and benefits of non-traditional computer architectures.
* Experience with Go and Rust.
* Willingness to accept a compensation package which is weighted towards long-term equity.
* Demonstrable track record of exceptional oral, written, and graphic communication.
Our Recruiting Procedure
1. All positions require you to write a brief cover letter that should be no more than one page long. The more concise the better. You can also substitute the cover letter for a snippet of code that will run on the signaloid.io platform; be creative! We use the cover letter / code snippet to screen for communication skills, as clear communication is essential in a remote working environment.
2. Applicants who pass the cover letter screening receive an initial 15-minute Zoom screening call with the CEO/CTO.
3. Applicants who pass the screening interview will be given a coding project that can be solved using the Free Tier of Signaloid's Signaloid Cloud Developer Platform. We will also provide you with additional free credits on the Signaloid Cloud Developer Platform. The coding exercise will be simple enough to complete in a few hours. You will however have a time window of one week or two weeks (your choice) to complete the coding exercise. You are encouraged to make your implementation open source on GitHub.
4. Applicants who successfully complete the coding exercise are invited for a set of interviews with people from our core teams (there will be up to six interviewers). The interviewers will use the project you completed as a discussion point.
5. In the final stage, applicants are invited for an on-site (or "virtual on-site") day with members of the team you are interviewing to join. During this day, we will work with you on a hands-on simulation of a real working day solving a task relevant to the position you are applying for, working with your potential future colleagues.
Benefits
A flexible remote-first work environment
* Be part of an international team with the flexibility to choose where you live, as long as you are available during the working hours of 09:00 to 17:00 UK time.
* Join the rest of the team several times each year for an in-person session somewhere in Europe.
Competitive compensation
* Yearly bonus based on company's Objectives and Key Results (OKR) performance and bi-yearly bonus based on your project team's OKR performance.
* Simple transparent compensation across the company, with four pay levels, in all roles, based on skill level: Contributor, Senior Contributor, Lead Contributor, and Principal Contributor.
* All full-time employees receive attractive stock options package.
A driven but respectful environment
* We never speak ill of others even if we differ in our viewpoints; we show up every day with a sense of urgency; we treat each other with respect as though each day were our last.
* No isolated "projects": No person in the team works in isolation and a successful outcome for the thread of work you lead will inherently depend on getting help from (and helping) other members of the team.