Leticia Portella is a software engineer at Stripe who taught herself to code. Here, she talks about the challenges that come with that.
Not all software engineers or developers take the traditional route of a computer science degree to their tech careers. In fact, a survey from StackOverflow in 2016 suggested that two out of three developers are at least partially self-taught.
But what is that experience like for those coders when they enter the workforce? Leticia Portella is one such self-taught coder and is now a software engineer at fintech Stripe.
With a background in oceanography, she really understands how difficult it can be to get into the tech industry without having a traditional computer science background.
In her current role, she works on the company’s tax product, which helps companies calculate and collect tax as they are processing payments on Stripe.
She has also written a book – A Friendly Guide to Software Development: What You Should Know Without Being a Developer – to help others learn about what she does.
‘We can only make good software if everyone is involved in the conversation’
– LETICIA PORTELLA
How did you find your way to the world of tech?
The real answer is slowly.
I studied oceanography in college and started doing data analysis in college for a professor, which I loved. During that course, I started an internship in the navy and met two oceanographers working with Python.
That wasn’t typical for people in the field, but they believed it would be the future of oceanography and persuaded me to learn it. I found it very interesting and a whole new world was opened to me.
The truth is there was a lot of luck involved in my transition from learning Python to working in tech. I started getting involved in local programming groups like Pyladies and helping to organise talks and events such as SciPy Latin America and Pycon Brazil.
One day I decided to show the community what I had been working on in my master’s and a project manager saw it and said this is really complex work, you should come work with us.
What were some of the biggest challenges moving into tech without a traditional computer science background?
The biggest challenge is trying to make your CV stand out against people with traditional computer science degrees and experiences.
In Brazil, I worked hard to make a name for myself by giving talks, organising events and even starting and hosting the first data science podcast in Brazil. I engaged with lots of local tech communities and was the director of the Python Association in Brazil for a while.
When I moved to Ireland, I had to start again from scratch, and it was especially hard outside my home country. I networked as much as possible and got involved in local programming groups. Finding a mentor also made a big difference for me. She was actually the one who encouraged me to come and work at Stripe.
Getting the job at Stripe came with its own new set of challenges. It was my first role in a rapidly growing technology company, using a new programming language, my first time working with payments and my first time working full-time in English.
What were you most surprised to learn about a career in software?
I was surprised to find out that building software is different from programming.
Learning how to programme is like learning how to write – you learn the words and how the grammar works. When you’re developing software, it’s like collaborating with other people to write a whole book, which is very different.
Sometimes that technical programming part is the easiest bit. The hard part is usually moving from the theory to the commercial practical reality, figuring out how to build the right product and what to prioritise. There are no right answers when you’re building software!
What made you decide to write a book on software development?
I’ve always loved teaching people about software development and I’d spend lots of time explaining what I do to my friends or older people who are less familiar with technology. They wanted to learn more, but I couldn’t find any good information for people who aren’t developers and I figured we should change that.
I’d been writing and blogging a lot about building software and I finally decided to write a book when I met someone who was struggling with the move from a traditional business into a tech company. She wasn’t going to be an engineer herself, but needed to understand how software development worked and couldn’t get to grips with it.
The book isn’t just for future developers, I hope it benefits a wide group of people. We can only make good software if everyone is involved in the conversation.
What advice would you give to those thinking of becoming a software engineer without a traditional background?
Firstly it’s important to remember that there are many people involved in software development beyond the engineers. We also need managers, designers, technical writers, customer support, data analysts and many others.
But, for anyone learning how to code or considering a career as a software engineer, my best piece of advice for you is to learn how to write. Learning how to express yourself, make proposals and explain ideas effectively is a skill that will serve you well in this career.
Be active on social media, like Twitter or LinkedIn, or start a blog. Your first post probably won’t be great, nor your second, maybe not even your third. But the more you do, the more you improve. And sharing what you know and what interests you is an excellent way to position yourself, so people know you for something more than just your CV.
As well as writing, you should make yourself visible in the real world. Get out there and get involved in communities, find local events and meet people to learn from. If there are no ready-made local initiatives for you to join, create your own meetups and networking events.
Do you have any productivity tips that get you through the day?
I write everything down. It helps me to process information, learn and keep me motivated throughout the day. I do keep evolving my process, but currently it lives in a massive Google doc.
It can often feel like you’ve made no progress when you set yourself goals and get derailed by spending the day helping someone or debugging your code. When I write down the things I’ve done, it shows me the progress I’ve made, even if I don’t have the final result.
If I do start to feel like I’m lost or stalling, I try to start by doing something very small or very basic that gets a quick result. This gives me a burst of energy and builds some momentum going into whatever I need to do.
10 things you need to know direct to your inbox every weekday. Sign up for the Daily Brief, Silicon Republic’s digest of essential sci-tech news.