Production PRs in Week One? - A Guide to Joining Starling as an Engineer
Starting a new job can be daunting. No matter what experience you have, or how many questions you ask in the interview process, only the first few days unveil the reality of your new role. With any new job, this can be a bit of a challenge, but definitely an enjoyable one at Starling.
So, what will your first week look like? This varies depending on your team, but this week is all about getting you set up so you can make your first commit. Initially, you’ll spend some time with a member of our people team. They’ll give you an introduction to the company, and tell you more about our policies and benefits. Cyber Security will advise you on how to stay cyber-safe and our Workplace Technology team will set up your shiny 16-inch MacBook Pro.
You’ll join your team, and they’ll be around to support you with the process of setting up our tooling on your laptop. We have some cool scripts to speed this up, but it can still take some time. Setting things up will likely take up the best part of a day. Congratulations! You are now a Starling engineer. By way of celebration, your manager will support you with a small pull request to get you familiar with our codebase as soon as possible. We’re big on code contributions, so we’re excited to get you started as soon as possible! You’ll also crack on with compliance training covering the dos and don’ts of working in a licensed bank.
One PR down; many more to go…
Now that you’ve merged your first PR, what’s next? As you might expect, more code, more PRs and more learning on the job. You'll become familiar with the codebase and settle into your role. You will work on a variety of tasks supported by your team lead until you become comfortable contributing. Our engineers embody our “Own It” philosophy, taking code from initial problem-solving, code and config changes, all the way to the final production release. On the way you’ll need to write some good tests, find a suitable person to review your PR and test in our demo environment. When it looks good, you’ll monitor its progression to production. Once there, you’ll help resolve any alerts or exceptions that may arise as a result of the change. It’s rare this happens, and rarer that we need to completely revert a change, but small commits and releases make this simple.
Within your first few months, you’ll be scheduled to go on-call in working hours. Don’t worry, this isn’t as scary as it might sound! With growing confidence and stronger ability to navigate the codebase, you’ll take an all-day shift every few weeks. You’ll triage exceptions, look at logs, diagnose issues and action any alerts to promptly resolve issues in production. Don’t fret though, you’ll always have the might of Starling’s engineering team behind you. At this stage in your time with us, you’ll be able to take part in rolling releases into our production environment, deploying to all services owned by your engineering group. We release to production daily - often more than once! Keeping our releases small and easy to revert (if needed), is essential for keeping risk low and staying agile.
Living Our Values: Our engineering-led culture
Our values are important to us, and you’ll find that we don’t just write them on a wall and forget about them, we live them every day. You’ll find out about them on day one, and will see them demonstrated in many different areas throughout your time at the bank. Keep it simple, Do the right thing, Own it, Listen, Aim for greatness, and you’ll have a great career at Starling. We have an engineering-led culture, with everyone in the engineering hierarchy familiar with being a Software Engineer at Starling: all the way up to our CTO and Engineering Directors who have all been hands-on engineers at some point.
You’ll be allocated to one of our divisions: Banking Services, Customer Identity & Financial Crime, Platforms, Assurance & Resilience, and Product Engineering. These align with broad areas of focus for the bank. Within them, you’ll also join an engineering group, which focuses on a particular area such as Customer Service, Business Banking, Developer Experience or Payment Schemes. They are typically made up of around 30-40 engineers, and led by an Engineering Lead. This group of teams includes yours, consisting of 6-7 people. These teams are headed by a Team Lead, one of whom will be your line manager. They’ll be supporting your onboarding and organise regular 1-1 meetings to discuss how they can support you, and guide your long-term progression. These meetings are prioritised and are cancelled only in exceptional circumstances. We are very keen to ensure that everyone feels well-supported.
Going from Good to Great
A few months in, leading up to passing your probationary period, you’ll become increasingly autonomous. Going forward you’ll discover your niche within your team. If you think of ideas for new features or code improvements, tell your colleagues. You might have things you’ve thought of as a Starling customer, and now is your chance to share them! Many ideas for new features come from our employees, across the company.
You’ll be more confident and rather than simply executing assigned work, you will identify features we could build, technical debt and areas of improvement that you can work on. Anyone can contribute to any of our code if they see something worth doing (and get a PR approval, of course). You'll also find lots of opportunities beyond just learning on the job: joining book clubs on specific topics, expensing learning materials or attending conferences, if desired.
After probation, you can start thinking about your longer term role at Starling. We have a few pathways that engineers can take, and you may do a mix of things as you develop your career with us. There is no pressure to settle on one in particular. As an Individual Contributor, you’ll work as part of the team to deliver features, codebase improvements and bug fixes. Some specialise in a particular language or area of the codebase, some will gain broader knowledge, and work with various teams to spread it. You may focus on web, mobile, platform, or a mix of many areas. We also have People Managers - our team leads, engineering leads and beyond: responsible for the delivery of work, recruitment and staff development within their respective teams. No role is more valuable than another, so select the one you believe will be most fulfilling.
Your team lead will help guide you towards your professional goals at Starling, but remember to “own it”! Seek out opportunities to work with other teams, make improvements where you can and take part in outreach activities or use your volunteering days. And remember, always aim for greatness!
Welcome to Starling.