Senior Software Developer - Remote (Europe)
Form3 is a disruptive fintech startup on a mission to make payments easier, faster and cheaper for fintechs, challenger banks, ecommerce gateways, card providers and traditional banks wanting to reinvent themselves.
Form3 is a fully managed payment technology service combining a powerful AWS cloud processing platform, multiple-scheme payment gateways and a fully managed 24x7 service model. Form3 provides a complete end-to-end Payments as a Service for financial institutions and regulated fintechs.
LIFE AT FORM3
We’re an open, diverse and friendly bunch who believe everyone has a voice. Our team is a mixture of banking experts, techies, artists, marketers, and customer advocates. Simply put, we're obsessed with creating cloud-based solutions that get real time, cutting edge payment tech into the hands of FinTechs and banks alike. We don’t mind whereabouts you are based as we offer the opportunity for our tech team to work remotely. Most of our tech team work this way in fact, by using screen sharing technology to do pair programming. We have found that our team are much more productive that way.
WHAT WE ARE LOOKING FOR
We are looking for Senior Software Developers who want to be part of building a next generation payment API in the cloud. Our API is built on AWS where all of the infrastructure is defined in code using Terraform. All of the microservices that make up the API are built using Docker containers and deployed automatically using our Travis CI/CD pipeline. The microservices discover each other using Consul and talk to each other through linkerd (service mesh).
WHAT YOU’LL BE DOING
You will be working on greenfield development projects, focused on best practice across the board, including automation of absolutely everything (Terraform for infrastructure deployments to AWS, CI/CD with contract-based testing and auto-deployment of services within Docker containers, etc.), pair programming and TDD/BDD. Although we are mostly based around London, we are operating as a remote team, and typically working from home and pair programming.
- Polyglot: Choosing the right tool to solve the problem is critical, and we expect you to have professional experience with at least 2 different programming languages and multiple platforms and tools.
- Distributed architecture: We expect you to have previous experience engineering complex distributed systems, and a view on topics such as service discovery, integration testing, inter-process communication, the best way to define your services and APIs, as well as experience with distributed data stores.
- Public cloud: You have worked with public cloud services (AWS, Google Cloud etc.)
- TDD/BDD: Code quality is key, and we expect you to have worked with Test-driven development (TDD) and Behaviour-driven design (BDD) and be familiar with the use of tools such as Cucumber.
- Languages used:
- Java, Python, Go, Ruby
Some of the tools used:
- Terraform, Docker, Vault, Consul, Linkerd
- AWS: SQS, SNS, EC2, RDS