Land a software engineering job and stick to it
September 23, 2024•795 words
Alexandre Zajac, an Amazon software engineer, shared masterpiece career advice, that can help one to land a job - and stick to it - in FAANG, startups or even, build his own company!
Target audience: Beginner to Advanced
and if you like this writing, you may
- subscribe to his newsletter to receive "weekly" posts: https://www.hungryminds.dev/
- follow him on Linkedin to receive "daily" posts: https://www.linkedin.com/in/alexandre-zajac/
P.S.
- I received the following content from Educative.io via email. Finding no way to access it online, I preferred to preserve the content via a blog post for future reference.
- In case you are not able to subscribe to Educative, you can still learn the concepts presented in the courses via LLM tools like:
As credit goes to Alexandre and Educative, let's begin...
Forget tutorial hell.
Forget empty lectures.
Forget spending time to learn the latest stuff.
Here's the secret: Build real stuff.
Why? Let's break it down:
- You learn by doing: Reading about coding is like reading about swimming. You have to jump in to get experience.
- Solve real problems: Solving real problems has 2 benefits. It shows you care about customer problems and can become a real business.
- Show off your skills: A GitHub full of projects speaks louder than any resume.
- Boost your confidence: Nothing beats the excitement of making something that works.
- Master the tools: Tutorials teach you how to code. Projects teach you how to be a developer.
It doesn’t have to be this:
Person 1: I looked forward in time, I saw you started 14,000,605 side projects
Person 2: How many did I finish?
Person 1: One.
But learning by doing works, really well.
Don't just take my word for it. The data backs this up:
- The 2024 Stack Overflow developer survey: 58% of software developers are at least partially self-taught, with a trend where many developers are choosing to learn outside of traditional educational paths.
- This data also shows that 76% of developers believe learning new technologies is crucial for career advancement, suggesting that keeping skills relevant through building is better than knowing specific languages or technologies.
- WorldMetrics shows that more than 1/4 of developers are involved in at least 1 open source project on average.
Building projects isn't just about learning to code.
It's about learning to think like a developer.
You'll face real challenges, make real decisions, and create real solutions.
This is the kind of experience that turns devs into software engineers.
But where do you start?
How do you choose projects that will actually help you grow?
Don't worry, I've got you covered.
Here's my curated list of projects from Educative, beginner to advanced, that will help you level up your skills:
🌱 Beginner Level
Web Scraping with Selenium (Python): https://www.educative.io/projects/web-scraping-using-selenium-in-python
↳ Build a web crawler that scans data while you learn Python and browser automationVisualize Geospatial Data Using Plotly and Mapbox: https://www.educative.io/projects/visualize-geospatial-data-using-plotly-and-mapbox
↳ Learn how Maps displays points on a map with 2 well known frameworksData Visualization (Plotly.js): https://www.educative.io/projects/data-visualization-using-plotlyjs
↳ Transform raw data into interactive charts, mastering the art of visual storytelling
🌿 Intermediate Level
E-commerce App (React Native + Redux + Firebase): https://www.educative.io/projects/build-e-commerce-app-with-react-native-redux-and-firebase
↳ Build a full-fledged mobile marketplace, with state management and real-time databasesLLM-powered Chatbot (LlamaIndex): https://www.educative.io/projects/build-an-llm-powered-chatbot-with-rag-using-llamaindex
↳ Create an AI assistant that understands and responds, diving deep into NLP and machine learningFlask + AWS RDS MySQL Integration: https://www.educative.io/projects/connecting-a-flask-application-to-aws-rds-mysql
↳ Connect your web app to the cloud, to learn essential DevOps and database skills
🌳 Advanced Level
3D Tic-Tac-Toe (React Three Fiber): https://www.educative.io/projects/build-a-3d-tic-tac-toe-using-react-three-fiber
↳ Craft an immersive 3D game, pushing the boundaries of web graphics and React masteryMaze Solver (Ant Colony Optimization): https://www.educative.io/projects/maze-solver-using-the-ant-colony-optimization-algorithm
↳ Implement nature-inspired algorithms for complex problemsWeb 3.0 User Feedback System: https://www.educative.io/projects/user-feedback-for-your-website-with-web-3-0
↳ Build a decentralized app for user engagement, learning about blockchain and web3
These aren't just random projects.
Each one is designed to build your skills and introduce you to new concepts.
But remember, the project you choose matters less than the fact that you're building something.
Anything.
Creating, debugging, and deploying is where the real learning happens.
And here's a pro tip:
Don't just build these projects in private.
Share them with the world.
Put them on GitHub.
Write about them on your blog.
Tweet about your progress.
This does 2 things:
- It keeps you accountable. When you know others are watching, you're more likely to finish what you start.
- It builds your personal brand. Every project you share is a billboard advertising your skills to potential employers or clients.
Just pick a project and start building.
Your future self will thank you!