Software Engineer - Backend at Tally
San Francisco, CA, US

Tally makes people less stressed and better off financially through full financial automation. We’ve successfully launched Tally Cards, the first and only fully automated debt manager to put billions of dollars back into people’s pockets. Currently backed by some of the world’s top investors, including Andressen Horowitz and Kleiner Perkins ($92MM in total funding to date), Tally’s vision is to automate people’s entire financial lives so they can be less stressed and better off financially.

What Is Tally Engineering Like?

The Product Services teams Tally Cards and Core Financial Services build and maintain the backend systems that power the Tally app. Our engineers are driven and empathetic team members who believe in embracing modern architectures, such as distributed reactive systems and event sourcing. We program in Scala and strive to write clean, testable code that is robust and secure and we build highly-concurrent, event-driven platforms where quality and reliability matter, aiming to deploy rapidly and learning to balance quality with velocity.

Role impact: 

  • Collaborate closely with our Product team to deliver the next generation of financial automation at scale
  • Scale and improve the reliability of our money transfer systems and workflows
  • Engineer the next generation of reactive and intelligent rewards systems
  • Build out the financial services platform that will become a strong foundation new products will be launched on top of

Our stack

Scala, Microservices, Akka (Http, Streams, Cluster), Kafka, Finagle, Thrift, Avro, Postgres, Docker, Kubernetes

In this role we value:

  • 3+ years of software engineering experience
  • Experience building consumer-facing APIs
  • Experience designing data models and working with databases
  • Passion for learning and constantly challenging yourself for continuous improvement
  • Being able to embrace reactive distributed systems
  • Being proactive and taking ownership of your work from ideation to deployment
  • Strong written and verbal communication skills, and interest in functional-programming

Big plus if...

  • You enjoy solving complex problems in consumer finance
  • You have professional experience with Akka and Scala or any other JVM language
  • Have experience with distributed, event-driven systems
  • You can navigate through ambiguity by turning business requirements into technical solutions