Your browser cookies must be enabled in order to apply for this job. Please contact if you need further instruction on how to do that.

Senior Software Engineer (remote)

Engineering | Sofia, Bulgaria | Full Time

Job Description

About Taulia:

Taulia is a fintech provider of working capital management solutions headquartered in San Francisco, California. Taulia helps companies access value tied up in their payables, receivables, and inventory. A network of more than 2 million businesses uses Taulia’s platform to determine when they want to pay and be paid. Taulia processes more than $500 billion each year and is trusted by the world’s largest companies including Airbus, AstraZeneca, Nissan, and Vodafone. For more information, please visit

About This Job:

We are looking for bright, curious, and mature individuals to expand our Engineering teams. Currently, our team is located in Sofia, Bulgaria but we are also considering remote employees to join us. 

Ideal candidates would be seasoned software engineers who are equally motivated by the technology and the value it brings to the business.

Previous experience with our technology stack and/or FinTech domain is a clear advantage.

About Taulia Engineering:

  • We're a tribe of agile teams. We craft a cloud-based, multi-tenant platform employing microservice architecture;
  • Our stack includes Groovy and Java, Spring, Jersey, Gradle, MySQL, Cassandra, Kafka, ActiveMQ, Camunda BPM and more;
  • We use Grafana, NewRelic, Redash, and Graylog to monitor performance and metrics;
  • Teams have full ownership of features and components - from technical design to rollout;
  • We release often and rely on tons of automated tests.

About Sofia Office:

  • Largest Taulia office with 70 employees from all departments;
  • Four Engineering teams and we are looking to add two more;
  • Convenient location, catered lunches, exciting list of perks;
  • Educational budget (covers books, courses, conferences and more);
  • We value a safe environment. No bossing around or micro-management;
  • Flexible home office policies.

Essential Duties and Responsibilities:

  • Take part in designing, scoping, and maintaining features and components;
  • Write elegant, maintainable, reusable code. Write unit and integration tests. Review your peers’ code;
  • Communicate clearly and in timely manner ideas, problems, and solutions - within your team and to other stakeholders;
  • Be able to work independently on tasks against strict schedules;
  • Be aware of value, priorities, and trade-offs when considering technology and design options;
  • Mentor less experienced team members and help them grow;
  • Be a partner for the Architecture team in brainstorming on new technologies and patterns to use;
  • Keep things realistic. Solve challenging problems and – more importantly – help avoid them;
  • You will be working on a critical part of the Taulia platform. You will create robust and scalable implementations for challenging business flows;
  • You will design, develop, and roll out integration paths to handle high-volume and high-impact business scenarios;
  • As part of our team, you will make sure that back-office departments have all the visibility and tools they need in order to monitor and troubleshoot business transactions.

You're a perfect fit for this position if:

  • You have 6+ years of Java-world experience in a small, high-velocity team;
  • You've built a cloud-based product before and stuck around to scale it as well;
  • You're experienced with distributed systems leveraging caching, messaging and REST services;
  • You understand how to work within the constraints of large datasets and high load without getting frustrated;
  • You always look for new and better ways to do things, and love automation: continuous integration, automated testing & deployment, and TDD are no strangers to you;
  • Most importantly - you're smart, curious, and grounded.

If you take your job seriously, but not yourself; if you want to make an impact and learn and enjoy it all the way - submit your CV to find out more.