Full-Stack Engineer (Consumer Product)

To apply, email mike with a link to your GitHub / LinkedIn / personal website or cv.

Principles

Self-reliance

  • Don’t ask for permission - we have a constraint culture, not a permission culture.
  • Own your work. Establishing your own objectives and timelines.
  • Initiative is key; don't wait for tasks to be handed to you or rely solely on predefined roles. If you would like to be managed you should work somewhere else.
  • Communicate directly and speak openly.

Focus

  • Efficient team - we believe in the effectiveness of small, dynamic teams that can compete with, and even outperform, larger traditional teams.
  • Reject waste - guard the company and your colleague's time, rather than wasting it in meetings without clear purpose/focus, or bikeshedding.

Production, speed, and excellence

  • Embrace new challenges. You might be asked to do things that you've never done before. If you're not comfortable jumping into something new with no knowledge, you should work somewhere else.
  • Prioritize productivity - we are developing fundamental breakthroughs. Timing markets matters which means we need to deliver. Expect to work long hours, including weekends. If you do not want to work long hours, or if you're looking for a nice easy job, this is not for you.
  • Situations do not self-resolve. Unresolved problems have asymmetric risk . Focus on the long term even if it makes you unpopular now.
  • Excellence. You should have an extraordinary high bar for your work.
  • Obsess over the details of your work.

Responsibilities

Core contribution - develop and maintain Nosh merchant, customer, and driver mobile applications. Minimize mistakes that enter production, fix and monitor bugs, develop and design architectural standards, and introduce best practices for managing app releases.

CI/CD - ensure backwards compatibility with our backend systems across multiple versions of product releases to the app stores. Manage our Build train. When a release cut is made for a "release candidate", introduce best practice for a staged rollout to all users.

Code reviews - maintain our high code quality standard by doing code reviews across our backend and frontend applications.

Follow best practices - build in the open with a keen focus on designing, testing, and documenting your code

Write & engage - contribute to technical reports/papers describing the system and discuss potential product improvements directly with users.

Customer support - we don't shelter engineering teams. Expect to collaborate directly with stakeholders on how best to improve the products.

Mobile + Web - we manage 3 mobile products (iOS and Android), and 3 web products (React). Expect to oversee the development of, and directly contribute to all 6 of these products.

Minimum requirements

  • 3+ years of experience writing production software.

  • Live between GMT-8 and GMT-5 (North American timezones)

  • Highly self-motivated with excellent verbal and written communication skills

  • Excellent knowledge of react-native - experience releasing production apps over multiple releases to (at least) thousands of daily active users. Preferably - experience with expo, redux, RTKQuery, reanimated, and Restyle. Should understand key performance concepts related to component re-renders, memory allocation, state management, and real-time communication protocols.

  • Strong knowledge or willingness to learn Swift / Obj-C - experience working in native iOS code

  • Strong knowledge or willingness to learn Kotlin - experience working in native Android code

  • Computer science background - understanding of computational complexity (time, space) and broad knowledge of algorithms and data structures

  • Mobile Operating system fundamentals - iOS and Android

  • Networking - understanding and troubleshooting experience of most common networking protocols: primarily WebSockets and HTTP.

Nice to haves

  • Blockchain - understanding of blockchain fundamentals and smart contract development.

  • Distributed systems - experience designing or working with distributed systems that required fault tolerance, low latency and high availability

  • Open source work - experience working with large open source codebases - either as maintainer or trusted contributor

  • Ethereum Attestation Service - experience working with EAS, understanding of EAS schema registry and attestations.

  • Digital Signatures and cryptography - understanding of HTTP Authorization standards, ECDSA, digital signatures, public private key infrastructure, and cryptography primitives.

  • Comfortable working in an applied research environment - we work with research institutions to commercialize novel internet primitives for the open web.