Transitioning from Corporate to Open Source at 23 y.o.
Going from standups in the office, to GitHub issues in my bedroom.
I’ve met quite a few people at in-person events over my tenure at Typesense, especially after my talk at Laravel Greece’s 10-year anniversary meetup. One thing that always caught me off guard with Greek folk, is them being intrigued about Open Source, but seeing it as a seemingly impossible part of Software Engineering to get into.
Open Source seemed like the holy grail of Engineering Jobs, especially for a then 23-year-old me, dipping my toes both into engineering and using OSS on my school laptop. I used to (and still do) have so much respect for people taking a stab at creating something, but giving it out to anybody and everybody, with the source code to boot. It seemed heroic in my eyes, but I was always wondering how could anybody make it in this field?
Although I’ve kind of cheated my way into Open Source by getting a job at an Open Source company, I wanted to share my experience on what I was expecting, what I found out and how I’m feeling after about 2 years now.
A Bit of Context
During my last year of uni, I was part of a 3-person team partaking in a Software Testing Hackathon, organized by my institution in collaboration with Netcompany-Intrasoft. Huge corporate tech company, with thousands of employees. We went on to finish as runners-up in the Hackathon and as a result, landing me an interview for a Software Testing job there. I felt like a move like this was a safe choice, follow what most do at my age, build some experience and get some money in my pocket, in order to keep living away from home.

I’m on the far left, along with the winning team and the third place finishers
The company’s offices were massive, 200 people working under the same roof. We had a huge team working on the project I was on, with managers, managers of managers, 2 daily standups and an excel sheet where I would report my work on. This is the norm for most tech firms in Greece, so I became accustomed to it.
I felt like the Software Testing pipeline wasn’t something that spoke to me that much. I felt like I was writing code that wasn’t exactly code, but meta-programming. Me being 23 at the time, and at the height of my excitement about the industry, I kept my eyes open for opportunities. It was at a lunch break I came across a job posting for Typesense, targeting the EMEA region. I didn’t know about Typesense beforehand, as I had never had the need for search in a pet project I had built.
As I read through the job description, I found out it was Open Source. The Holy Grail. I got so demotivated, but I pressed apply anyway. I then brushed the possibility of working there off, continued working, and thought about what to do next. Then a message popped up by Jason, the company’s CEO.
I was over the moon. Took my days off to prepare for any next steps. Kept on reading Typesense’s docs, reading through commonly asked SWE interview questions, and half-hazardly making a sales pitch for using Typesense. Then I actually got the job. I felt like I made it, before even trying to make it.
The Transition
From working through a company-issued Windows 10 laptop, I now had the choice of whichever hardware I want, running whichever OS I wanted, and I could keep using my riced-out Hyprland configuration for work.
I worked remotely, so I could use my monitor, at my desk, with my keyboard, and get paid to do it. I could also be wherever, and as long as I had internet access, I could work from my bedroom, when visiting friends, or even from a Greek island (as long as you have cellular AND a good enough signal, learned that the hard way).

My summer office view
One thing I didn’t even fathom before joining Typesense, is that I had to learn to deal with a strange version of customer support. Because people have questions, and people get angry when something doesn’t work and there’s no one to guard us from that in Open Source. You don’t think about it, but people who don’t know you, can’t hear you or see your face will interpret your words differently from how you think you’ve formed them. You have to learn how to be polite, but keep the context brief.
This is the same for asynchronous teams like ours. I had frequent calls with Jason when starting out, but when I got onboarded and got my speed up, they got fewer and fewer. I have colleagues whom I never heard speak, but only live as faces in our Slack inbox. And somehow, we all make it work.
I’m trying to think if this is related to the team, or the leadership behind it all, because it all feels so effortless. No impromptu calls. No nagging with an issue tracker. Everybody seems self-driven and everybody is open to discussion. You’re always sure to provide full context to the rest of the team and think about what to do next. It sometimes feels like I have twice the time in the same day, even though I still keep working for 8 hours.
It feels like a fever dream from time to time. Getting flown out to attend LaraconEU, and people knowing the team I’m working with. Meeting Taylor Otwell, and sharing a chat about my first experience with web apps being Laravel, and him being a .NET developer back before they started work on Laravel.
But Open Source is not that deep. You find a niche, or something that you want to create. Doesn’t have to be complex, hard to contribute to or perfect. I started to contribute to other projects here and there, just investigating issues I faced myself, and then finding a solution to them. I published my first packages on different package managers. But 2 years ago, this would seem impossible. Because we think of Open Source as the “Smart People Club”. I wouldn’t consider myself to be smarter than the average person. So if the average Joe can get a job in this place, so can you. I implore you to be curious, think about building stuff that people will enjoy, not that will land you a job. And you’ll be surprised by how much dopamine your brain will release when that first Pull Request opens, or when you get the “Starstruck” badge on your GitHub page.