Senior Software Engineer - remote

CoinTracker
Posted 3 years ago
Your opportunity
Join our tight-knit early-stage remote team that thrives on interesting technical challenges and building magical products that improve peoples' lives. As an early engineer on the team, you will work across the stack and directly own top-level product and engineering objectives.

You will
  • Build new features and products
  • Work across the engineering stack, including backend, web, and mobile
  • Own and deliver on 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

This role may be a good fit 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
  • Are productive, resourceful, and an effective problem solver
  • Work effectively in a remote setting and are able to overlap with our core hours of 9 AM to 12 PM PT
  • Thrive in an early-stage startup environment with less stability and more ambiguity
  • Are interested in financial products and/or cryptocurrency

What's it like working at CoinTracker?
We are a fully distributed, tight-knit team spread across three countries and five cities. We have minimal process, and the majority of our time is spent working and collaborating asynchronously through tools like Github, Slack, Zoom, Asana, Notion, Google Docs, and Figma. We also stay aligned through weekly all hands, weekly goal setting, and daily standups. We aim to empower every individual on the team with full transparency, ownership, autonomy, and clear objectives.

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.

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.

Last but not least, our tech stack is
  • Web: HTML, Javascript, React, CSS, Sass
  • Mobile: React Native, Expo, GraphQL
  • Backend: Python, Flask, GraphQL, Postgres, Redis, Python RQ
  • Infrastructure: Heroku, AWS

If this sounds exciting, we'd love to hear from you!