Job Description
CoinTracker makes cryptocurrency portfolio tracking and tax compliance simple. Beyond cryptocurrency, we are building a general automated financial assistant for all financial assets. Our mission is to increase the financial freedom and prosperity of the world.
Your opportunity
Join our tight-knit early-stage distributed team that thrives on interesting technical challenges and building magical products that improve people’s lives. As an early engineer on the team, you will work on scaling our backend systems and directly own top-level product and engineering objectives.
You will
- Build new features, products, integrations, and back-end services
- Design scalable systems to support millions of users
- Own and deliver top-level product and engineering objectives
- Collaborate with team members across the company
- Evolve our technical architecture, infrastructure, code quality, tools, and culture to continually step up the quality and speed of our engineering systems
- Help interview new engineers
You may enjoy this role if you
- Love building great products and engineering systems
- Have strong CS fundamentals, including algorithms, data structures, system design, and distributed systems
- Write high-quality code, value software testing, and uphold best practices in engineering, security, and design
- Enjoy designing, building, scaling, and maintaining production services
- Have experience scaling the architecture of a startup to a mid-size company
Sample projects you might work on
- Implement real-time transaction synchronization with blockchains and exchanges
- Develop a smart order routing platform to enable cryptocurrency trading across exchanges, taking into account full transaction history, tax lots, fee detection, arbitrage, and slippage
- Implement tax-loss harvesting to reduce capital gains taxes for cryptocurrency users
Some of the skills we’re excited about
- 5+ years of software development experience
- Productive, resourceful, and effective at problem-solving
- Drawn to an early-stage, high-growth startup environment with less stability and more ambiguity
- Interested in financial products and/or cryptocurrency
- Able to work effectively in a remote setting and able to overlap with our core hours of 9 AM to 12 PM PT
Our engineering process includes
- Code reviews
- Continuous integration
- Multiple daily automated deployments to production
- Automated testing with >85% code coverage
Some of the technical challenges we face are
- Lots of data — billions of data points to track transactions and market pair prices
- Data structures & algorithms — automated transfer detection, cost basis tracking, tax optimization, and more. Your CS fundamentals finally come in handy!
- Scalability — some cryptocurrency users, such as algorithmic traders, accumulate millions of transactions per year. CoinTracker needs to work seamlessly for those power crypto traders.
- Blockchain — whether it’s running our own nodes, implementing xPub address generation and traversal, or parsing smart contracts to seamlessly support decentralized trading, we get our hands dirty with core blockchain technology
- Technical complexity — integrating with hundreds of exchanges and blockchains and supporting thousands of cryptocurrencies means we have to methodically architect our software and build critical monitoring systems to deliver a robust and accurate platform
- Product challenges — building a consumer finance product that works flawlessly for our global user base and through our partner integrations with top crypto exchanges, marketplaces, and tax-filing software
Our tech stack is
- Web: HTML, Typescript, React, React Native, Styled-Components
- Mobile: React Native, Expo, GraphQL
- Backend: Python, Flask, GraphQL, Postgres, BigTable, Redis, Python RQ
- Infrastructure: GCP, Terraform, PostgreSQL, Docker, Pub/Sub, Datadog, PagerDuty
- You don’t need to know any or all of these, but be willing to learn!