Remote Senior Software Engineer - Distributed Systems

Remote /
Engineering – Engineering /
Who are we?
Audius is a digital streaming service that connects fans directly with artists and exclusive new music. 

It does this by being fully decentralized: Audius is owned and run by a vibrant, open-source community of artists, fans, and developers all around the world. Audius gives artists the power to share never-before-heard music and monetize streams directly. Developers can build their own apps on top of Audius, giving them access to one of the most unique audio catalogs in existence. 

Backed by an all-star team of investors, Audius was founded in 2018 and serves over 1,000,000 users every month, making it the largest non-financial crypto application ever built.

Who we are looking for?
We are looking for passionate team-players to help us architect and build the most difficult parts of the Audius protocol (high availability services for decentralized replication of data, latency-sensitive distributed file transfers, Ethereum smart contracts, infrastructure and tooling for third parties to run our open source services). You are a collaborative engineer who enjoys working with a small team to solve big problems that need innovative solutions. You’re eager to jump into multiple parts of our tech stack and have strong CS fundamentals to do so. We solve a lot of problems that can't be easily Googled or searched on StackOverflow.

Our Company
Audius is a 18-person team of entrepreneurs, engineers, audiophiles, and blockchain experts. Our benefits include unlimited PTO, high quality paid medical insurance, FSA, 401k, yearly learning stipend, equipment stipend and a home office setup credit. We also have a monthly concert credit (COVID-19 permitting).

Our company is fully remote forever and our team is currently distributed across the United States.

Key Responsibilities

    • Help design, architect, build, deploy and maintain services in the Audius protocol
    • Assume ownership of features end to end through release
    • Although you'll primarily be focused on distributed systems problems, you'll also be working on things as broad as database replication and sharding, cryptography and scalable decentralized infrastructure
    • Promote sound engineering practices and champion best practices for testing, tooling and incident response
    • Perform thoughtful architecture and code reviews

Skills and Experience

    • 5+ years of experience architecting, implementing and maintaining high-volume services in production
    • Deeply knowledgable about distributed systems, microservices, scalable system design and algorithms
    • Extensive experience with a modern programming language (Javascript, Python preferred), shell scripting and strong Linux fundamentals
    • Great interpersonal and communication skills and comfort working within a small team
    • Track record of working through technical obstacles and solving complex challenges with minimal guidance and experience helping mentor other engineers to achieve the same

Bonus Points

    • Knowledge in our tech stack: Javacript (nodejs), Python, Postgres, Redis, Docker, Kubernetes
    • Previous experience with Blockchain development (Solidity, Ganache, Truffle, WASM, Rust)
    • Passionate about music