.png)
Develop Yourself
To change careers and land your first job as a Software Engineer, you need more than just great software development skills - you need to develop yourself.
Welcome to the podcast that helps you develop your skills, your habits, your network and more, all in hopes of becoming a thriving Software Engineer.
Develop Yourself
#273 - When You Don’t Know What to Build—Build This
Breaking into software development isn’t about finishing another tutorial—it’s about building something that matters. In this episode, I’ll show you how to choose a side project that proves your skills, keeps you motivated, and actually impresses employers.
You’ll learn:
- Why great data makes or breaks your app
- How to apply the 80/20 rule—stick with tech you know, sprinkle in something new
- Picking a project you’re emotionally invested in (so you don’t abandon it)
- Tools that make you look sharp fast—React, Next.js, Tailwind CSS, and smarter database picks
- Adding AI functionality to make your project stand out
- Building a real MVP, deploying with Vercel or the cloud, and estimating time like a pro
Here's the link for the free APIs on GitHub: https://free-apis.github.io/#/browse
And—don’t miss it—we’re giving away a full Parsity scholarship.
👉 Apply here 👈
Shameless Plugs
🧑💻 Join Parsity - Become a full stack AI developer in 6-9 months.
✉️ Got a question you want answered on the pod? Drop it here
Zubin's LinkedIn (ex-lawyer, former Googler, Brian-look-a-like)
Welcome to the Develop Yourself podcast, where we teach you everything you need to land your first job as a software developer by learning to develop yourself, your skills, your network and more. I'm Brian, your host. Hey, before we start this episode, I want to announce something really special we're going to do at Parsity. For the first time, we're giving away a full one-year scholarship to Parsity, completely free of charge. We know the economy is in a bit of a rough period right now. People are having a lot of trouble getting credit or applying for loans. We've had to turn down so many people this year for Parsity that otherwise would have been a really great fit. So if you think that a program like Parsity could help you and you think we're the right people to do it, I want you to apply. Now there is one caveat you need to record a video explaining why you think you're a good fit for this program and the kind of help that you need. We want to make sure you're a good fit because we're going to be working with you for a full year, completely free of charge. I really hope this is a life-changing event for somebody and I'm really happy to do this. Who knows if we'll do this again in the future, but if you want to apply, just fill out the form in the show notes, and if you have any questions at all, feel free to email me at brian at parsityio. Now back to the show.
Speaker 1:Building a side project is tough, and because you have limited time, if you're a professional, you're a parent and you're trying to learn how to code on the side, you need to have a good side project. This is just table stakes for your entry into this career. Why do you need a side project? Because it's going to show that you actually know how to do the thing that you say you can do. It keeps you interested. It keeps you emotionally invested in coming back. It is bar none the best way to learn how to program. You can write a bunch of tiny little programs or grind lead code all day, but that's not going to teach you how to actually compose software, so you need to have a side project. The problem is, though, most people either end up in tutorial hell or they end up building some clone of some other thing that was built, and they don't really like it, so they don't come back to it, they don't feel the emotional investment, and it's hard to stand out if you've built like a weather app or a movie finder that everybody else has built. By the way, I own a coding bootcamp and we do those projects, but we don't stop there. We have everybody build something really interesting, and here's my general way of going through it. We're going to go through how do you find the data, what kind of data that is good to use versus what's probably not great to use, the tech stack and how you can decide what tech stack you should be using. Feature planning. And, finally, deployment when are you going gonna actually host and deploy this thing that you're gonna build? Let's get right into it.
Speaker 1:The most important part or the part that most people skip, which is actually the most important part is the data. If you don't have data for your app, you don't have anything. So I actually fell into this trap myself. I was part of a small startup with a couple friends of mine. Where did this data come from? Right, we're like well, how do we know all the houses that are on the market? How are you just gonna have a real estate app and just know like the house across the street costs half a million or whatever, or this house costs a bag of beans, you don't have access to that data. You have to buy it. So immediately when we were building it, we came to this point where we're like, wait, where are we gonna get the data? It seems so obvious now, but at this time I was very new to software. I had no clue what I didn't even know and I didn't think where do I find the data? So the first thing that you need to do is figure out where am I going to find the data.
Speaker 1:Often, if you don't have an idea which is where most people get kind of stuck and that's where they fall back on the clones or building a movie finder or some tutorial is because they don't know what to build. So, if you don't know what to build, always start with the data and you can start here. I'm at this site. I'll have this linked in the show notes. It's a GitHub repository that gives you free public APIs. This site is hit or miss. Honestly, this is going to take you a while to do and you shouldn't just skip this or try to find the first thing. You have weather, lame market, maybe cool, maybe things like stocks or things like that. You have aviation free real-time flight status and global aviation data API. This actually sounds pretty cool. So often what I'll do when I don't know what to build, I'll figure out what seems interesting, like to me. Honestly, this seems kind of interesting, this aviation stack, and I'll go in here and I'll look at, okay. Huh, this looks really janky actually now that I'm looking at it, so maybe I actually won't be using this. This is where you have to do a lot of research. This is the messy, not so fun part. But once you find a good API and you find what information is available, you can start deciding what kind of features you wanna make based on what's available, of features you want to make based on what's available. So I'm going to look at this one.
Speaker 1:Jobs, of course, being a huge thing in 2025 that everybody wants to know about. Everybody's talking about jobs or how hard it is to get a job, or you know, I can't find a job. I'm a junior developer and I applied to 2 million places and no one will hire me and I'm homeless now writing HTML on the streets of San Francisco for change, right, you don't want to be that person. So let's look at a couple job sites here and I see one that looks okay. I'd always want to see what kind of data gets returned. Here I can see historical salary data, and so maybe this actually could be useful. I could do something like where you log in, you could make a username or something like that some sort of authentication. You can get access to salary data and see hey, you could enter in your salary, maybe, and see like, where are you as far as other people are concerned, I don't know.
Speaker 1:This is where you have to have a little bit of ingenuity, a little bit of creativity to decide. Would people find this interesting? If you have an app that is more like a social media type thing or something that you'd share with friends in a small group, you can kind of just skip this part. But really important to understand where does your data come from. You can use this site to at least get started and understand and get an idea for what kind of data is out there. So now that you've found your data and you've also done a little bit of planning for what kind of data you're going to use and how it would be useful to the end user, always think how is your user going to interact with this data? Why would they care. Why would somebody log into your site, give you a password if they need to and then find some sort of value from that data?
Speaker 1:If they wanted to know how to make more money, maybe by understanding stock trends or something like that, or they wanted to negotiate their salary and they want to know what the salary is in their actual area for their particular role, and then get a template or something in order to negotiate. Is that something worth somebody's time? Think about it. Would you use this? Do you find this interesting? That is the most important criteria, in my opinion. If you don't like what you're building, you're not gonna be emotionally invested and want to come back to it and build day after day after day, when your kids are screaming or wanting you to make pancakes in the morning and you're thinking I don't wanna do this right. So wanting you to make pancakes in the morning and you're thinking I don't want to do this right, so make sure it's something fun that you can actually do.
Speaker 1:Next is the tech stack, so we can divide this into four buckets that you're going to need to decide on at the very least A front end, a back end, the styling you're going to use and the database layer. And this is when you should use, in my opinion, the 80-20 rule 80% technologies that you're familiar with, 20% technologies that you're not familiar with, because this can be a learning opportunity for you if you're doing this correctly. This is how I learned React. This is how I learned Amazon Web Services. This is how I learned SQL. This is how I learned how to use AI and large language models in my web apps. So this is an excellent breeding ground for learning if you do it right, but follow that 80-20 rule. And the reason why you want to do that is because, if you choose 100% new technologies, you're just going to be spinning around in circles and not actually ever make anything, because you're going to get really, really frustrated. So you want to use that time so that you actually can get into the groove and write the stuff that you want to write.
Speaker 1:And here's my super opinionated list of technologies that I would consider for the front end React, nextjs. This is a no-brainer, in my opinion. If you're using something else, I'd have to ask why. Why would you do that? For the backend? I think you can choose between something like Python or Go or JavaScript, typescript, node, express. Pick one, pick one of those. I don't think there's a wrong answer here. I think you should do a little bit of market research and see what's most likely. And, to be completely honest, the boring thing that nobody wants to admit is that Node Express and TypeScript on the backend is fine and that a lot of people are hiring for that. In fact, more people are hiring that than like learning Java or something. Pick C Sharp, pick Java Depends on where you live, what you're into and again, following that 80-20 rule, don't get so caught up in the technologies at this stage.
Speaker 1:Which 20 rule? Don't get so caught up in the technologies at this stage. Which more important is building something that is going to teach you the fundamental concepts of how to build some complex software. If you know one language, you can learn other languages. Do not get so caught up in the languages, please.
Speaker 1:Styling here's where people often just kind of just give up. They're like styling. I don't want to do that. You're going to present this to people. You want this to look good in some way. I would use Tailwind. Personally, I might even use something like AntD, which is a lesser known kind of popular library that looks pretty modern. If you're building a SaaS app, you probably want to use something like Tailwind. If you're building like an enterprise app, you might want to use something like Material UI. Honestly, it doesn't look that great, but it kind of looks more enterprise-y. I'm not a designer. I don't plan on being one Now, with the help of AI, you can build stuff that looks really really good, really simply. So just have some sort of thought into how you want this app to look. Don't leave it as an afterthought. Think what am I going to use. Have your list of actual tech you're going to use, including the styling library.
Speaker 1:Next up is the database. In most boot camps, you learn Mongo and Express. Parsity is honestly no different. So you might want to choose something else. Use SQL, use a vector database, use a graph database. Use a Lucene search database like Elasticsearch. Use another key value store I don't know. Try Redis or something like that. Just pick something. Pick something that you think would be cool. And again, following that 80-20 rule, if you're already experimenting with React on the front end, maybe you want to stick to Mongo Express, because that's something you're more familiar with, and now you want to learn Tailwind and maybe React and Next, and you're not familiar with those things, or you want to learn TypeScript, so then you might just keep your database to whatever you're comfortable working with in the first place.
Speaker 1:Now, of course, the elephant in the room AI. Everybody's like how am I going to learn AI? And this is your opportunity to learn AI. You are going to put AI somewhere in this app. That is my challenge to you. Where does it go? Front end, back end, the database layer. You're going to add AI at some layer of this application and we're going to go over some practical ways you can do that, because I do think this is becoming more of a necessity to do nowadays, especially as more companies are hiring for people that have some AI skills basically knowing how to integrate AI into their applications. And we'll go over some ways that I think you can do that really, really nicely that are going to make you stand out from the average person who's still building like it's 2023, even though nowadays, everything has to have some sort of AI component, which leads us to feature planning. You should have done a little bit of this when it came to the API layer and thinking, okay, what is the data I'm going to use? And thinking, how might this be useful. Now actually plan out the features. And I don't mean plan out like the app, from like start to finish. I mean make the most minimally usable product you can imagine.
Speaker 1:If this is a stock app, do you really need to have a login? I don't know. Do you really need to have authenticated routes? I don't know. Is that necessary for the most minimally usable product? What will people find value from that? You can immediately implement. What do they need to be able to do? They need to be able to see stock, look up stock, maybe discover trends, get advice on buying, advice on buying and selling. This could be an app in itself. Would somebody find this useful if they could go into an app, look up a stock that they're interested in, see some trends around that stock and get advice on whether to buy or sell that stock? Could that be useful to somebody? Great, just build that.
Speaker 1:That may take you longer than you think, and think step by step. What happens when a user first lands on your site? Is there a login? Is there a landing page? Do they go straight to something? Do they need to log in at all? Should you roll your own login or authentication layer or should you just buy something off the shelf like Clerk or Auth0?.
Speaker 1:These are the things you need to come up with and plan. There's a lot of planning before your hand should ever touch a keyboard and you need to estimate this as well. So there's feature planning and there's also some estimation at work too. How long do you think in hours it would take to do something like this? It's okay if it's a guess at first. You'll understand a little bit more about the time commitment you'll have to make after you do a few things. If it took you four or eight or 40 hours to do a page and you're thinking, oh my God, that took forever, three times as long as I thought, well, then you know that the next task that is similar may take around that same amount of time. So your first estimations are maybe just total guesses at this stage, because you don't know what you don't know. Then you can re-estimate after doing a few features and understand what do you really have left to do and then make the proper adjustments, because then you can understand how long is it gonna take you to go from start to minimally usable product? To go from start to minimally usable product Estimations could be an entire show in itself. For now, just do your best, write down some hours, always double your estimates, or at least 1.5X your original estimates, and then go back and look at them after the first week that you've done some things and then understand okay, well, if this took this long, then this other task that is similar may take around the same amount of time.
Speaker 1:You can organize this as much as you want. I literally use pieces of paper and just write down in a notebook what am I going to do, what's going to be involved in that small task, and then I'll just kind of X them off. You can use tools like Trello to do this so you can actually organize all your tasks then move them from like planned to progress to done. If you're one of those type A type people that's not really me I use a notebook and I just write down what am I going to do, and that way you have a clear path of what you're going to do each day. That help you get closer and closer to your goal. So, as your future planning, think where does AI fit into this?
Speaker 1:Now, it's not always that you can fit AI into a project, but oftentimes you can, if you think about this stock market example where you're looking at stocks and you want advice. Well, maybe you don't know much about stocks or how to give advice. Could you feed this to a large language model If you fed it all the different data it needed about a particular stock and its historical trends and you gave it to AI and said hey, what do you think? What are some things I should look out? Be aware of? Prompt it. Then maybe you can get an actual decent response that somebody could find particularly useful. Is that something useful? I don't know. Try it, experiment it.
Speaker 1:Learn how to integrate large language models like OpenAI into a Nextjs app. This is really not that hard to do. There's tons of tutorials. In fact, if you go to Vercelcom, you can look at their AI SDK, their software developer kit. You can download this NPM, install it and use it. I'm not sponsored by them Wish I was but this is really cool. I use this at work, I use this for fun and it is really really cool. You can go from zero to a chat app in hours maybe less if you're a more experienced developer, but you can do some really cool stuff with AI on the front end with only knowing TypeScript or JavaScript and build something really, really cool.
Speaker 1:And now we're finally at the deployment stage. This is when you want to promote your app and push it out to the cloud so people can use it. When it comes to deployment, you have a few options for cloud service providers, people that are going to host your app for free. Here's my very strong opinion on what you should use Google Cloud, amazon Web Services or Vercel and or Vercel. I honestly think you should have a separate back end and a separate front end for learning purposes. Only Now, in real life, I would just use Vercel for all this, because if I'm using React and Nextjs, I'm just going to deploy the whole thing in one bundle out to Vercel Stupid, easy to do.
Speaker 1:I think this is still a fine option because it can teach you a little bit about Vercel, but, honestly, vercel is so easy to use that you're not going to learn a ton by using it, but it's really really great developer experience. I love it personally, but for learning purposes, you have to have a little bit of friction and I would encourage you to use something like Amazon Web Services or Google Cloud Provider If you can host your server, your back-end services, on Google Cloud or on Amazon Web Services. You're gonna learn a ton. It'll lead you down some interesting rabbit holes, like whether to use serverless or whether to use EC2 or a dedicated server in order to launch your backend and your database can be hosted, maybe on one of those services as well, and then you might even want to buy a domain. Maybe you wanna go on Amazon's Route 53 and buy a domain for like 10 bucks and you can have a really, really professional-looking website. Now maybe this website becomes more. Maybe it becomes not just a side project but a little side business, but either way, you're going to have something really interesting to show off to people that ideally keeps you engaged and is actually helpful and useful. This is way more interesting than building another to-do app or following some dude with a hundred hour tutorial on YouTube that you're not going to finish anyway. This is going to be difficult. You're going to pull your hair out if you have any and then you're going to finally come back and realize that you've built something that is cool and you will have learned so much from doing it. I'm excited for you.
Speaker 1:I do this all the time. I mean, I build little things constantly because I want to learn more stuff, and I know that this is the best way to learn as a software developer is to just get out there, get kind of lost in the weeds, figure it out, pull yourself back and then learn. Now, if you don't know how to code at all, obviously this is way beyond what you could even do. And why are you even watching this video in the first place? Just go to parsityio. But if you think, hey, I don't have the right skills for this yet, don't fall into that trap either.
Speaker 1:Begin building. Begin just kind of getting into the weeds, learn a little bit along the way. Maybe there are tutorials that are going to be involved in this learning process, but don't use them as a crutch. Use them to just get just enough education, just enough dosage of knowledge to just move on and keep building. That is the most important thing you must build. I hope you found that useful. There's also a cheat sheet, a worksheet, in the show notes that's gonna help you get through this.
Speaker 1:I wrote this for people that are in Parsity and people I've mentored that I'm just gonna give to you so it can help you build something cool, because I'm sick of seeing all your movie finders and weather apps. When you're looking through a stack of resumes and you're looking at the 20th person who built a weather app Lame. Anyway, see you around. That'll do it for today's episode of the Develop Yourself podcast. If you're serious about switching careers and becoming a software developer and building complex software and want to work directly with me and my team, go to parsityio. And if you want more information, feel free to schedule a chat by just clicking the link.