Leticia is a Brazilian developer who changed career from Oceanographer to web development four years ago. She managed to get a fintech job as a developer at Stripe. She is a great example of a software engineer without a CS degree who has a successful career.
Hey, so can you introduce yourself?
Hi! My name is Leticia. I studied Oceanography at college in the south of Brazil. Oceanography is a beautiful and exciting area and I was able to study a multitude of different things such as calculus, biology, chemistry and coastal management. It is normal for oceanographers to work with matrices and arrays so I ended up learning a bit of MATLAB. From there I studied Python and fell in love with programming.
I got involved with a local Python community, started teaching girls to code and organize events. At the time I was doing a master degree in Oceanography, and nobody knew what that meant. So one day I decided to show what I was doing with programming and it was amazing. That day I met the manager that offered me my first job.
After that I got one job then another. When I discovered I was coming to Dublin with my partner, I worked a bit on a NGO to analyze data of politicians in Brazil and later I got an internship at Outreachy with JupyterHub. That was a life changing opportunity as well. I met so many amazing people on Project Jupyter and worked with a major open-source project. I can't tell you enough how much it meant to me. Outreachy is an amazing program and I would totally recommend it for anyone that has a minority background.
Four years after changing my career I live in Dublin and I've worked as a Software Engineer at Stripe for the past year. Since I started my career as a Software Engineer until this day I write blog posts about this weird path I am following, my career struggles, tips for beginners and, most of all, the things I learn while I am studying. It is my favorite tool for learning something new.
For the past two years I have been the host of the first Brazilian podcast in Data Science, called Pizza de Dados (Data Pizza in translation). We wanted to share the work of Brazilians around the work with great quality of content in Portuguese, since a lot of Brazilians don't speak english. We have 29 episodes with over 300 thousand downloads since we've started!
Can you tell us what an average day looks like for you just now at Stripe?
It's hard to tell as each day is pretty unique. I am currently based in Dublin, so I start my day with reading emails and Slack messages that were sent on Pacific time. Then I usually continue on the tasks I have assigned to me. We have a week planning on Monday, so I already know the tasks I'll be doing during the week.
These tasks can vary between coding, writing and reviewing documents or reviewing pull requests. A couple times a week we have meetings with other teams that we either have dependencies on or projects together and I also have a couple of interviews to attend. I also engage in 1:1 meetings with colleagues from other teams and hubs, this is a huge part of Stripe.
How did you teach yourself to code?
This was an ups-and-downs road. I started with learning things I needed to analyze data. This was mainly learning how to use MATLAB. I didn't realize that was programming but I knew I liked it. At that time I started an internship in a research institute of the Brazilian Navy.
There I met some guys that showed me that I could do much more things with Python than I could with Matlab. They started giving me small problems to make me figure out. After that I started watching some online courses like the MIT OpenCourseWare classes and reading books about it. I got addicted!
I never realized that changing careers was a possibility, I mainly studied because I enjoyed it. I remember that my first usable script in Python was automatizing the production of PDF maps on ArcGIS. It was basically learning by trial-and-error of the documentation. When I was finished, it cut my map production from 4 days to 15 minutes.
When I got my first job as a software engineer I needed to learn everything - including what an API was. It is crazy today to think that I didn't even know what an HTTP request was but I still got the job. So a lot of my learning also happened during working hours, when co-workers gave me a basic understanding of something and later I would go home and dive into it as far as I could.
This is also one of the things that motivates me to write the things I've learned. All of my knowledge was given to me by posts, videos and caring friends. I feel like it is my obligation now to do the same for others! I know there is a lot of good material out there, but sometimes there isn't or sometimes the way you write will be good for one person that is struggling. It doesn't matter, we should write what we learn. Even if it is for ourselves! My general rule is: if it took me more than 5 minutes to answer a question, it is worth writing a post about it.
How did you get your first programming job?
My first job was offered to me by a manager that saw my talk at a local meetup. She saw what I was doing in my masters and told me that those things were as complex as building a website, and that I should give it a try. She really trusted me and I thank her so much for it. The company was not a good fit for me so I eventually changed jobs a couple months after.
How has your life changed since becoming a professional programmer?
Completely. Today I feel like I have total control on my career and my future. I was able to change countries without knowing almost no one and still get a job. I loved oceanography, but it is such a small area, that it meant that to go further I needed to go where the jobs were, not the other way around.
But not only that, I am passionate about how programming can be used in any area. I have worked with marketplaces, systems for juridical areas and now economic infrastructure. It is like having a super-power that can be used where it is needed. How amazing is that?
How did you discuss your change of career in your Stripe interview?
I talked about my career change when I was introducing myself in the interview with my manager. I remember we discussed a bit the decision of changing careers and my journey since then, but more as a way to identify how I handle problems rather than evaluating if I did or did not have a degree. I don't think that my lack of formal diploma in the tech area influenced the hiring process at all.
What advice do you have for someone who is teaching themselves to code?
I just did a huge post dedicated to that topic as a celebration of my 4th anniversary as a software engineer. But If I could summarize I would say a couple of things:
- Be gentle with yourself. Technology is a complicated area and you can't conquer the world in a day or even a month. Everything happens at its own pace and you should understand and respect your time.
- Make connections. The best jobs, the most wonderful opportunities are usually open to referrals first. And having your network will help you with getting new (and better) jobs, will help you on practicing for an interview and so many things. Conferences and local meetups are great places to find amazing people and make friends.
- Learn how to sell your strengths. When you don't know a lot about coding and technology, you must make sure that companies understand your values other than coding. What makes you unique? Of course, you need to learn to code to go through technical interviews, but you have to use your different background (and story) to show how much you are capable of. Everybody has its abilities. Find yours and make sure they are brought up in interview
- Learn at least one language well enough. It is so easy to lose yourself in frameworks, languages, trending things, that you may lose focus and wonder off. Having a toolkit language to focus will give you speed to build something while giving you tools to relate when you are learning a new language. And the keyword is enough. You should know as well that no one will ever know everything.
(Check out Leticia's Advice for newbies article)
What are your coding dreams for the future?
To be honest, I don't know! I would never imagine that I would be where I am right now, so it is kind of crazy thinking about the future! Right now I wish to do great work at Stripe, build amazing and exciting things that will make me proud of myself.
I think that I would like to study to become a tech leader in the future, I think it would be a work I would like to do. I also want to keep writing my blog posts as well. This is something I am super proud of. Maybe eventually I take my blog posts and expand them into a book or something. That would be another dream come true!