Staff Software Engineer, Reliability

  • Coinbase
  • London, UK
  • Apr 03, 2020
Permanent

Job Description

Location: London, UK
Coinbase has built the world's leading compliant cryptocurrency platform serving over 30 million accounts in more than 100 countries. With multiple successful products, and our vocal advocacy for blockchain technology, we have played a major part in mainstream awareness and adoption of cryptocurrency. We are proud to offer an entire suite of products that are helping build the cryptoeconomy, and increase economic freedom around the world.

There are a few things we look for across all hires we make at Coinbase, regardless of role or team. First, we assess whether a candidate demonstrates our values: Clear Communication, Positive Energy, Efficient Execution, and Continuous Learning. Second, we look for signals that a candidate will thrive in a culture like ours, where we default to trust, embrace feedback, disrupt ourselves, and expect sustained high performance because we play as a championship team. Finally, we seek people with the desire and capacity to build and share expertise in the frontier technologies of crypto and blockchain, in whatever way is most relevant to their role.

Read more about our values and culture here.

The Reliability Engineering team helps realize that vision by supporting Coinbase engineering teams to build software that is world-class in terms of its reliability. As a core service team, the Coinbase Reliability Engineers work closely with the rest of engineering. We actively seek out and gather the state-of-the-art, best practices from the industry at large. Through education and advocacy, we seek to ensure that reliability is a core value of our engineering culture. We level up other engineers by sharing deep knowledge, performing proactive analysis and improving processes, tools, and automation. Ultimately, Reliability Engineering succeeds when all engineering teams are able to build reliable software on their own.

We're looking for a Staff Software Engineer to balance the role of an individual contributor while also anchoring new projects, leading technical direction and mentoring other engineers on the team. We highly value individuals with intellectual curiosity and openness. We collaborate across the organization, helping our engineers think big and take risks while building a culture of diversity, positive energy and blameless truth-seeking. Blog Posts: Reliability Engineering at Coinbase , gRPC to AWS Lambda: Is it Possible?
  • Scale & Integrations: 5 Million Users , 33 Countries , NYSE Integrations
  • Transparency: Public Post-Mortems , Open Sourcing Our Infrastructure

 What you'll be doing:
  • Design and implement foundational infrastructure components used by every engineering team in production (e.g. dynamic configuration, secrets storage, container orchestration, etc).
  • Pro-actively find and analyze reliability problems across our business units and stack, then design and implement software to create step-function improvements.
  • Build automation and improve systems to eliminate toil and operations work.
  • Educate, mentor and hold accountable the engineering team to improve the reliability of our systems and make reliability a core value of the Coinbase engineering culture.
  • Work closely with product engineering teams in improving observability to identify and measure SLIs and corresponding SLOs.

 Projects you could work on:
  • Developing extremely high performance and reliable dynamic configuration systems supporting a service oriented architecture.
  • Improving observability of shared services frameworks used across the entire company.
  • Automate the incident response process to eliminate troil and improve communication.
  • Embed with customers to solve totally new problems in operating crypto, fiat and trading systems at scale.

 What we look for in you:
  • At least 7+ years software engineering experience in industry.
  • Experience working with containers and container orchestration systems (Docker, ECS, EKS, etc).
  • Understanding of data structures & algorithms especially as they pertain to performance and reliability.
  • Ability to debug complex systems and evolve a running environment while maximizing availability.
  • Fluent in at least one programming language such as Golang, Ruby, or Python.
  • Knowledge of UNIX/Linux system internals such as system calls, TCP/IP and debugging tools.

 Nice to haves:
  • Exposure to both NoSQL and SQL database technologies such as DynamoDB, MongoDB, PostgreSQL, AWS Aurora.
  • Fluent in Golang.
  • Experience with observability and monitoring systems such as Kibana, Datadog, etc.

 

Coinbase is committed to diversity in its workforce and is proud to be an equal opportunity employer and to review all of our job postings to minimize biased language. Coinbase does not make hiring or employment decisions on the basis of race, color, religion, creed, gender, national origin, age, disability, veteran status, marital status, pregnancy, sex, gender expression or identity, sexual orientation, citizenship, or any other basis protected by applicable local, state or federal law. Coinbase will also consider for employment qualified applicants with arrest and conviction records in a manner consistent with San Francisco's Fair Chance Ordinance and similar local laws.

Global Data Privacy Notice for Job Candidates and Applicants

Depending on your location, the General Data Protection Regulation (GDPR) and California Consumer Privacy Act (CCPA) may regulate the way we manage the data of job applicants.  Our full notice outlining how your data will be processed as part of the application procedure for application locations is available here: Ireland/EU , United Kingdom , and California .  By submitting your application, you are agreeing to our use and processing of your data as required.