Software Development Engineer - Core Infrastructure at GoCardless
🇬🇧 United Kingdom › London (Posted Apr 11 2023)
Please mention that you found the job at Golangprojects.com
At GoCardless we believe bank payments are the best way to pay and get paid. We also believe that bank account data is a powerful tool to make better, faster decisions. We’re making it easy to use both- for businesses everywhere.
GoCardless is used for domestic and international payments by 75,000+ organisations and counting, processing more than $30 billion across 30 countries. We’re an award-winning London based fintech, with additional offices in Riga, Paris, Melbourne and New York.
As a Software Development Engineer in our Core Infrastructure team, you'll be part of a small team that sets the direction of the GoCardless core stack. You'll think through the moving pieces that make up our infrastructure and the complex interactions between them. You'll work with every other team within engineering – from product to data – to help build and scale the global platform our product sits on.
We take pride in our work, and open-source as much as we can. We’ve picked some examples of recent open-source work you can use to understand our remit, along with real-world examples of how our team operates from GitHub discussions:
Kubernetes extensions: We run a lot of our workloads in Kubernetes, and have extended our clusters with a suite of operators that we open-source at gocardless/theatre. We recently added support for authorised consoles, providing developers across GoCardless with a tool to securely administer and debug their application from within a production environment. See the PRs for this feature here.
HA Postgres tooling: GoCardless prefers Postgres for applications that need relational databases. We run large HA Postgres clusters using a tool called Stolon. Our SRE team built an extension for Stolon called stolon-pgbouncer which can provide zero-downtime failover between Postgres primaries, along with first-class integration with PgBouncer, a common Postgres connection pooler
Database load testing: As SREs, we work to ensure the reliability of our services. We recently upgraded our larger Postgres clusters to use the latest Postgres version on more powerful hardware. To ensure this change went smoothly, we wrote a load testing tool for Postgres called pgreplay-go that we used to replay production queries, helping us discover performance regressions. We also wrote a blog post about it.
What excites you
We use a large list of technologies, and will never expect you to have experience with all of them. We expect you to be enthusiastic about the infrastructure space, and the impact your work can have on others. To enjoy this work, we need you to be excited about learning new technologies, and not afraid to tackle hard problems.
Ideally there’s a programming language you’ve become proficient in, and used it to build a project you’re proud of. We don’t mind what language this is, as long as you’re up to joining a team that focuses mostly on Go and Ruby. We’ll probably ask you about this during the interview - we’d love to hear what you’ve done!
Finally, you take pride in your work and aim to build solutions that solve real problems, as simply as possible. You appreciate (and try to build!) tools that are easy to understand and run with minimal effort. You want to work with people who share these values, and will continually push you to improve. You value receiving and giving feedback, and trust in your team.
What excites us
Your skills in writing clean code, covered by tests, in one or more programming languages. Go and Ruby are our main languages in the infrastructure space; if you haven't used these heavily then we'll give you the space to get up to speed.
Your knowledge of deploying scalable and resilient applications in a containerised environment. We rely heavily on Kubernetes. We’ve also settled on Jsonnet for generating our Kubernetes configurations.
Your experience in building scalable and fault-tolerant infrastructure in the cloud. We are primarily a GCP customer, but experience with other cloud providers like AWS or Azure is welcome.
Your motivation to automate operational tasks and eliminate toil using your software development skills and your experience with Infrastructure as Code. We use Terraform, Chef, and Cloud-Init.
Your ability to read and understand source code written by others—especially open-source code—in order to debug issues.
Your familiarity with observability tools, and your conviction that “if you can’t measure it, you can’t manage it!” We use Prometheus for metrics, Elasticsearch & Kibana for logs, and Grafana for dashboards.
Your comfort with the UNIX shell environment and your knowledge of Linux fundamentals and TCP/IP networking.
Your familiarity with relational databases and other data stores, especially around high availability and performance optimisation.
We don’t expect you to meet every requirement. If you’re excited by this role, we encourage you to apply.
(some of) The good stuff
Wellbeing - stay healthy with dedicated support and medical cover
Work away scheme - gives you the option to work away from your country of residence for up to 90 days in any 12 month period
Adaptive Working - allows you to work flexibly, around your lifestyle
Equity - all permanently employed GCs get equity to help you make a valuable contribution
Parental leave - to suit everyone embarking on life's great adventure
Learning Budget - lead your own development with an annual learning budget
Time off - generous holiday allowance, + 3 annual volunteer days, + 4 annual business-wide wellness days (‘GC Fridays’)
Life at GoCardless
We're an organisation defined by our values; We start with why before we begin any project, to ensure it’s aligned with our mission. We act with integrity, always. We care deeply about what we do and we know it's essential that we be humble whilst we do it. Working this way creates the GC magic- the reason we all love showing up to work.
Diversity & Inclusion
We’re building the bank payment network of the future and our ambition is to move money anywhere, for anything, for anyone. If we’re going to achieve this goal, we need to build a team of ‘GeeCee’s’ that is as wonderfully diverse as the world we live in - with a multitude of perspectives, experiences & backgrounds.
We’ve got a long way to go, but here’s how we’re doing as of June 2022;
Female Employees - 46%
Ethnic background - 32%
Identify as LGBTQIA - 10%
Neurodivergent - 9%
We’re rooting for you during your application and GoCardless aims to provide reasonable adjustments to make our recruitment process as remarkable and accessible as we can. Please speak to your Talent Partner if you need extra support.
If you want to learn more, you can read about our Employee Resource Groups and objectives here as well as our latest D&I Report
We’re committed to reducing our impact on the environment, leaving a more sustainable world for future generations. In 2021 we became co-founders of the Tech Zero coalition, a group of businesses committed to taking climate action as part of the UNFCCC Race to Zero. We aim to reduce our impact and to create positive change on the natural world.
Please mention that you found the job at Golangprojects.com