Advice for New Devs from Fullstack Alum Clément Mihailescu
By The Fullstack Academy Team
As Fullstack continues to host events and classes virtually, we want to ensure that we’re continuing to support the next generation of software developers by providing valuable tools and resources.
In 2017, he founded AlgoExpert, a resource that helps you practice technical interviews (become a Fullstack student and you’ll automatically get access!).
Read and watch some of the highlights below to learn more about Clément’s career journey, advice for aspiring developers, and how to start a side hustle.
This interview has been condensed and edited for clarity.
On Clément’s Career Journey
Have you always wanted to work at Google?
I knew about Google vaguely from the media, but that was really it. Once I got into Fullstack’s coding bootcamp and started doing a little research, it started to pop up as this high-prestige, kind of pinnacle of software engineering.
It only really hit me about how awesome an opportunity it would be once I interviewed there and saw the office. It wasn’t the plan originally.
What was your career path before you decided to get into software engineering?
When I graduated from [the University of Pennsylvania], I didn’t have any internship experience and I didn’t really know what I wanted to do as a math major—you don’t have a necessarily clear-cut path; you can kind of go anywhere.
You have problem-solving skills, but you don’t really have a concrete skill set.
So I didn’t really have a path forward. I had applied to a few different types of jobs—one in advertising, one in general operations—nothing seemed exciting or promising, and that’s when I took the leap and went to Fullstack.
Advice for Students and Aspiring Developers
How can you make sure you’re getting the most out of practicing?
The main thing about smart practice is making sure that when you do a problem, you come out of that problem having learnt the optimal solution and understood why that optimal solution is optimal.
Should aspiring developers focus more on building projects or studying data structures and algorithms?
The answer is probably an answer you don’t want to hear—it’s both. It depends on how much effort you’ve put into one.
Those algorithms and data structures you’re going to need for the coding interviews. Otherwise, you’re not really going to need them. You’re going to need projects for your resume to land those interviews or to increase your chances of landing those interviews.
I would say focus, if you’re someone with no experience and no STEM degree or no CS background, three to four really good projects—that’s what I had; that felt like a good number—and as you gain work experience, the number diminishes.
What makes a good side project that will catch the eye of an interviewer?
There isn’t necessarily a clear answer. I made a video about this a long time ago—one of my most popular videos about projects.
My analysis is that a few things that make a good project are:
- Is it visual?
- Is it very easy to grasp? You don’t need to spend even two minutes to understand it.
- Is it interactive? Can someone play around with it trivially? If they have to download something, you’ve lost them (unless you have something that’s on the market).
Should you contribute to Open Source? How will it help you in the job search?
You can try, but I don’t know if it will help you that much. To me, if I see on a resume someone says that they contributed to Open Source, I’ll be like, “cool,” but I don’t know if it would have that much more impact.
If you can say that you’ve made a really decently sized contribution, that’s a positive.
What are the key differences between working at a big company versus a startup?
The obvious answer of the benefit you get at a startup [is that] you get to really shape and impact the product.
When you’re at [a larger company], the thing of feeling like a little cog in the wheel has some validity. Even though you can have a lot of impact on the project and all that, you are dispensable, whereas if you join a startup, the smaller it is, the more critical you are.
If you go to a startup, you might get paid less, and the ability to have mentorship and learn the best practices won’t be the same. You might learn a ton, but it might be a different flavor.
On Leaving Your Job and Starting Your Own Company
Why do people leave their jobs?
I think you leave for one of a few reasons.
- You get a better offer elsewhere, and that’s purely driven by financials and maybe slightly cooler projects or things like that
- You leave because you want to start your own company
- You leave for a startup because you’re not happy with your work and you want to do something different.
You’ve gotten a stamp on your resume and you’ve made a lot of money—and some people value money less than others and there also comes a point where there’s diminishing returns.
What advice would you have for someone who wants to start a side hustle?
There is such a thing as passive income, as an example, investing in the stock market—that’s really as passive as it gets. Starting a business isn’t passive income. At least it won’t be for a while.
For us, at AlgoExpert, it was by no means passive income. It was active income.
How did you know it was time to leave Facebook to work on AlgoExpert?
There were a few things. First of all, we got to a point where we realized we have a more-than-legitimate business that deserves to be treated as one. Why are we doing it just on the side?
The second thing is it got to a point where at Facebook (this was also when I had just started my YouTube channel), I was living the world’s unhealthiest life. I was getting no sleep and trying to do three things at once, and it was just not sustainable.
There was that thing—you’ve heard, like, Jeff Bezos say his whole regret-minimization framework, like, you want to do things that’ll make you not regret in the future and all that, and it came to the point where we were like, yeah, we’d regret not doing this, so let’s go for it.
What’s next for AlgoExpert?
Right now, one of the key things I keep seeing is that startups that don’t stay focused tend to mess up and I’m seeing a bunch of startups lay off people because they didn’t do that and so we’re trying to stay focused on what we do best. We’re not trying to outgrow ourselves.
We’re excited to do a ton of feature improvements. We released a brand-new coding workspace recently, just yesterday a brand-new testing framework that we think is much better… so that’s what we’re focused on.