Systems Engineer - OS Team

  • Engineering
  • London, United Kingdom

Systems Engineer - OS Team

Job description

About Hadean

It seems that every problem today requires technology to solve it, and most of those solutions require massive-scale computing - genome editing, curing cancer, autonomous vehicles, simulating reality. And the only ways to implement those solutions, up to now, have been costly, complex or both. Super-computers, the cloud and edge computing all have their issues - they’re unreliable to operate and scale, difficult to build and manage, and too unpredictable and expensive to budget for and fund. Fundamentally these problems are down to a stack that was designed 30-40 years ago.

These problems are only going to become more prevalent as more demands are placed on our ageing technology stack, and Hadean believes that every application in the future should be able to be distributed across hundreds, thousands, tens of thousands of machines. The current stack is irreconcilable with the opportunities and demands of this new world. To solve these challenges we believe that ubiquitous computing needs a new way of thinking and distributed systems must be supported in fundamental ways at the Operating System level. As such, we’re throwing out the rule book on OS design. Hadean is daring to rebuild the operating system from the ground up, to be distributed-first, robust to scaling, efficient, compact, and faster - it will work in real-time across hyper-scale deployments without layers of bloated software.

 

About The Team (and maybe you)

  • We have worked on software that is used by actual users in production at scale.

  • We enjoy having our contributions reviewed by peers and follow up on feedback.

  • We understand the KISS methodology and can provide examples from personal experience where ignoring it has led to disastrous outcomes.

  • We are team players and enjoy working with others

  • We value different perspectives and often don’t agree on the best approach, but we find a route forward and “disagree and commit”.

  • We hold short weekly engineering talks and each contribute with presentations on topics which are relevant to our work or of personal interest.

  • We don’t yet have a formal gaming group, ultimate frisbee club, or caffeine drinking culture, but we are working collectively to define that

  • As an early stage startup we are involved in driving the direction of the company

  • We believe working side-by-side helps us build better things. Working remotely when necessary is cool, but we prefer working face to face - we’re social animals after all!

About You

You probably spent a lot of time taking things apart (and possibly putting them back together) as a kid, wanting to figure out how they worked. You know that anyone can work at the application layer and that the siren’s call of ‘hard problems’ draws the best developers deep into the stack. You’ve spent so much time reading other people’s code that you sometimes feel like you get to know them. All this experience reading code has taught you how to write code for others. You’ve come to realize that everything boils down to tradeoffs, and there’s very rarely a universally right answer. You enjoy looking for the situations where your code doesn’t perform optimally as they often give you a new perspective on the problem.

 

What You’ll Be Doing

  • Implementing new features, supporting existing features, and fixing bugs at all levels of the OS stack.

  • Supporting (and potentially building) distributed applications written for our framework.

  • Looking for opportunities to improve automation, code simplicity, generality, or efficiency everywhere.

  • Being (or becoming) our in-house expert for some specific area in which you feel you can make an impact.

  • Documenting your code, as well as contributing to other internal documentation, external documentation, and our company blog.

  • Participating in the ideation phase of planning, providing your unique perspective on the prioritization, design, and implementation of engineering work.

  • The usual agile things, you know the drill: scrum kanban scrumban, standups, retros, pull requests, gitflow, open-close jira tickets, etc.

-

What We’re Looking For

  • You have experience developing prototype (MVP) software and iteratively making it more {performant, functional, stable, etc.}.

  • You are happy to have your code running deep down inside the stack, with no user potentially being aware they’re even using it.

  • You have some experience (even on side projects) writing highly performant server software (e.g., web servers), distributed systems software (e.g., distributed databases), or embedded systems (e.g., wireless sensor networks).

  • You have a strong understanding of the concerns related to low-level hardware architectures, concurrent (multithreaded) code, highly available/performant servers, bounded allocation programming.

  • You have experience developing at  the operating system boundary (e.g., making syscalls directly, writing a userspace network stack) or within the OS itself (e.g., kernel development, filesystem work, device drivers).

  • You have at least 3 years of coding experience in ‘systems’ languages (C, C++, Rust, Assembly) or an equivalent amount of experience working on ‘systems’ problems in other languages (e.g., writing a Unix shell in Haskell).

  • You are energised by a dynamic, fast-paced and agile workplace.

  • You are an original thinker, who can present and defend a well-reasoned position even if it’s not the popular one.

  • Ability to work in the UK.

Nice To Haves

  • Experience with or affinity for the Rust programming language.

  • Experience with Operating Systems development (e.g., memory management, file systems, network stack).

  • You have an interest in real-time computing and/or distributed computing.

  • You have made contributions to more than zero open source projects.

  • Familiar with nerd/pop culture references (e.g., Avengers, Rick & Morty, Matrix).

  • 5+ years experience writing job specs, pleease help us!

Benefits++

  • EMI scheme, the number of options is individually tailored to your role and impact

  • Optional contributory pension scheme

  • Cycle to work to scheme

  • Spontaneous drinks, dinner, you-name-it company social event

  • Childcare voucher

  • Annual eye-exam

  • Free fresh fruit, coffee & tea

  • Magnanimous start time (and it’s off-peak)


Additional Information

Opening Date for Applicants: 6th January 2019

Closing Date of advert: 30th April 2019

Salary: £40,000 to £140,000

Working hours per week: 40 hours a week

How to apply for this job: Please apply through the careers page: https://careers.hadean.com/.


Equal Opportunities

Hadean is committed to Equal Employment Opportunity throughout our recruiting and hiring process and is dedicated to increasing diversity in our workplace.