Clear actionable steps for becoming a Data Engineer
Becoming something new always feels challenging. You need to learn new skills and do new things. It’s easy to get lost in the journey. In this blog post, you’ll find clear steps you can follow to become a Data engineer.
This is one of the funny cases where it is better to start with the end. Let’s think for a moment how does the end goal look like. We can define it.
You’ll become a Data Engineer when you get hired and you can perform your work with a sustainable work rhythm.
I spend a good time thinking about the second part. It is really important. You can get hired as a Data Engineer. But if you need to work 80 hours per week to finish your tasks, it’s not going to be worth it.
Now that we have the end goal clear. Let’s start working backward. I know this can be a confusing exercise, but bear with me, try it just for fun. This is what we’ll be talking about:
- Negotiating your offer
- Passing the interview
- How to get interviews
- CV
- Portfolio
- What to learn
Negotiating your offer: This is an interesting one. Salary is always a tricky topic. Unfortunately, I can’t give you a number. And as they say: mileage may vary. What I can provide are some tricks and principles to make this conversation easier:
- Do your homework: you need to walk into this conversation with a number in mind. It’s difficult to make the math in your head on the fly.
- Take some time to review how much you are making today. Think more than your base pay, including benefits and any related amounts.
- Use tools like Glassdoor to research how much the companies are paying.
- Ask around, maybe some of your friends can provide you with some intel.
Passing the interview: this can be a challenging step. Luck also plays a big role here. Try to not get down if you do not pass your first one, it is a game and you need to practice. You need to learn the rules and you’ll make it. Some tips/principles that can help:
- Technical test: there is a high chance you get an automated test. Usually this is mostly about SQL. You might get asked some basic concepts but from what I’ve seen SQL should get you all the way.
- Introducing yourself: this is an art. When it’s your turn to talk about yourself, you’ll want to have a good elevator pitch. Make it relevant and remember they will average the things you say. Finish on a high note and talk about your experience or what you’ve been learning.
- Technical questions: Listen carefully to the question, breathe, make sure you understood it and then answer. It is allowed to ask clarification questions. Make sure you know what they want from you. Do not jump an answer the first thing you thought. Beare with twofold questions. Most people forget about the second and only answer the first one.
- Your questions: Prepare questions from your side. Ask about the team, how they work and the kind of projects they solve. You can even ask questions that showcase what you’ve been learning.
How to get interviews: How can you get your foot on the door? There are multiple ways and it’s a journey. Some ideas that might help:
- Referals: let’s start with the best and easiest way. If you have friends inside the company, this can help you a lot. Most of the companies value who their current employees recommend. Their employees will make some extra cash if they end up hiring you. Is a win-win-win.
- Social Media: Twitter and Linkedin are amazing places to get yourself noticed. Share your journey and make some friends. Keep your eyes open, this is a great source of opportunities.
CV: There is a ton of advice in the internet for CVs. Some ideas:
- Hiring managers are always in a rush. They will skim through your CV and won’t read more than 1 page. Write it with this in mind. Practice skimming through it, what stuck.
- Use formatting. You can bold some words and underline others. Make them relevant, make them stand out.
- Tailor your CV for each opportunity. Make sure your relevant experience/skills shine. Try to match the job posting to your CV. Use their language and don’t be afraid to mention multiple places that you have worked with snowflake.
Portfolio: Do you really need a portfolio? It can help a lot. It can show what have you learned and what have you done with what you’ve learned.
- Use a portfolio to show instead of just telling. This is a great tool to showcase your skills in a practical way.
- Tell me a story. What problem were you solving? What did you learned in order to solve it? What improvement are you making? Why does this matter to you?
- A portfolio can help you connect with the hiring manager in a personal way. Maybe you share similar interests.
- Make you portofolio easy to find. Put the links with a short description in your CV. Don’t make the hiring manager go into your website, catch their attention with smalls summary.
What to learn?: This will depend on what the company is looking for, but here are some ideas:
- SQL: this is a must. You want to have your SQL skills sharp. There are really cool resources like this one. Who does not want to learn SQL and solve a mistery?
- Python: this can help depending on their tech stack. You could use Pandas, Numpy or even Pyspark.
- Data warehouse concepts: What is a dimension or fact table? This concepts won’t only help you build a Data Warehouse but also use one.
- Cloud: Most of the companies host their whole infrastructure on cloud. Learn about the tools the providers offer. A certification here can go a long way.
If you’ve come so far this down you might be interested in learning more. I created this course that can help you get hired as a Data Engineer.