58

What technologies or stacks should I create a project to add in my resume for entry level software jobs?

Profile picture
Data Scientist at Tata Consultancy Services2 years ago
  • I am looking for a Software Engineer role in big techs.
  • They varied my experience in my previous company, i.e. I was part of three different projects, all of which used different tech stacks, and none of them was a development project.
  • Now I am confused about adding projects to my profile because I do not have any projects related to development.
  • I have experience in python that is related to Data Science.
  • I would love some guidance on deciding on what to build and how to choose between web, front/back end, full stack, android, etc.
7.2K
3

Discussion

(3 comments)
  • 64
    Profile picture
    Robinhood, Meta, Course Hero, PayPal
    2 years ago

    So here's my advice in a vacuum:

    • I heavily recommend doing something on the front-end as it's far more concrete to non-technical people, especially recruiters.
    • When you're doing something visual like a mobile app or website, it's far easier to share it and get a meaningful amount of users. This makes impact far clearer to both hiring companies and yourself. I reaped huge benefits doing this by building Android side projects that got millions of users in my free time (if you want to learn how to do the same, check this out: "How can I get really good at Android?").
    • For whatever stack you choose, lean towards the industry standard. So for Android, write in Kotlin, for web, write in TypeScript/React, etc.

    There's also several other more pragmatic angles to consider like:

    • What companies in your region are looking for
    • The pay scale of certain stacks vs. others
    • The amount of competition in a stack

    I am looking for a Software Engineer role in big techs.

    For Big Tech in particular, they simply don't care what tech stack you have used, especially for junior engineers. Here's the reasoning behind that and what you should optimize for instead:

    • If you're a junior engineer, you're almost certainly not good with that tech stack anyways, even if it was more "cutting edge".
    • Even if you were to choose a more relevant stack for some Big Tech company, there are going to be so many other applicants who are trying to game that same angle that it's impossible for you to stand out with that alone.
    • Big Tech companies are so gigantic that they use pretty much every conceivable tech stack possible. This leads to them hiring engineers based more off of their fundamentals vs. their knowledge in 1 particular stack. Even though I went to Meta to do Android, my interview was only ~20% specific to Android. The vast majority of my interview was very agnostic.
    • The best way to impress Big Tech companies is to build projects that actually have a ton of users. Let's say you build an Android project using some modern framework like Jetpack Compose and you apply to an entry-level Android position at a Big Tech company. I guarantee you that 100+ applicants will have similar projects - You would not look special at all. However, let's say you published your project and got 10,000+ users on it. Only a small handful of applicants will be able to claim the same, and you are now instantly competitive. This is how I was able to get reachouts from Instacart, Square, and Uber (all very prestigious companies that could go under the label of "Big Tech") from my projects.

    At the end of the day, you should build something you're passionate about. The #1 failure mode with side projects by an astronomical margin is losing motivation and not seeing them through to the end. This is hugely mitigated when you work on an idea that genuinely gets you excited. Here is our 1 hour+ masterclass about how you can come up with a great side project idea.

    Lastly, I highly recommend my step-by-step guide to building an impressive software project.

  • 46
    Profile picture
    Meta, Pinterest, Kosei
    2 years ago

    Build what is most interesting -- ideally interesting for both you and an employer. Here are a few parameters through which to interpret how interesting a project is if you're an engineer:

    • Will you be able to publish something as a result of learning this technology/stack? e.g. the deliverable for an ML project might be a Github repo or paper.
    • Will you be able to get real users for what you build with the technology? e.g. Android/web development are great here since you can get hundreds of users with fairly low effort.
    • How sophisticated is the technology? Some level of depth is good since it showcases your skillset.
    • Can I get help from the people around me for the technology I choose? If no one around you knows anything about blockchain, you should learn it (especially if you're earlier in your career). If all your friends are learning Android dev, learn Android.

    Some great related discussion:

  • 31
    Profile picture
    Robinhood, Meta, Course Hero, PayPal
    2 years ago

    Here are some other thoughts on how to actually stand out when it comes to Big Tech:

    Major Open Source Contributions

    • These companies all have a large OSS footprint, and I know several people who got hired into these companies by submitting major PRs into them.
    • However, this is much easier said than done. The codebase behind these libraries will be very large and very complex; it will take the average earlier-in-career engineer a while to understand them.
    • Even after you understand the codebase, you need to build a substantial improvement to the library and submit the PR. The PR will be closely scrutinized as these libraries have wide reach, and your code will be reviewed by some of the best software engineers in the world.
    • I heavily recommend actually using the library you want to make contributions to. A very organic way is to integrate the library itself into your personal side project. From there, you will have a good understanding of how it works and hopefully how it can improve as well. Some examples here:
      • Wanting a new API from the library (fairly common)
      • Coming up with a cleaner way to use an API from the library (somewhat common)
      • Hitting a bug with one of the library's features (rare but very meaningful if you can fix it)
    • All that being said, this article seems like a good resource to start with if you end up going down this path.

    Getting A Strong Referral