Aspiring Analytics Engineers, Start Here.
Resources for how to learn and grow into the data role of your dreams.
With all of the content I share about analytics engineering, I’m always asked, “where do I even start?”. Hopefully, my story of transitioning from a finance major, to a data engineer, and then to an analytics engineer, shows that just about anyone can become an analytics engineer if they want to be!
Technical skills that matter
People always have an idea of what they think they need to learn. You hear that data engineers need to know it all- Python, JavaScript, SQL, AWS, and Spark! Honestly, this is unrealistic. If you know how to do everything, you probably can’t do any of those things really well.
In my opinion, you only need to know a few key technical skills. For analytics engineers that is SQL and data modeling. Yup, that’s really it. Those are the two foundational skills I would put 80% of your effort towards.
SQL
I depended on W3 schools and Leetcode to perfect my SQL skills. I would practice a few problems on Leetcode each day, then research the most optimal ways to answer them. This is how I familiarized myself with window functions, complex joins, and calculating business KPIs. The questions are similar to problems you need to solve at your job and during the technical interview.
I highly recommend paying the $35 a month while preparing for interviews in order to unlock more questions and the top answers.
Amy Chen, Partner Engineering Manager at dbt Labs, still credits Mode’s SQL course for helping them learn SQL and land a job at dbt Labs years ago. This looks like an awesome self-paced course to learn (and practice) all SQL functions.
Data modeling
I was lucky to have been introduced to data modeling during an internship I had with UPS in college. That internship went back to the basics of entity relationships and ER diagrams, two topics I no longer see people discussing. Read up on the basics of data modeling to get a good understanding of why we create data models and the different types that exist. dbt also posted a helpful thread that discusses some different approaches.
Here’s what I recommend reading to get yourself familiar with the required technical skills:
📘 Technical skills and interview questions to know
📗 What I’ve learned from giving coding interviews
📙 Top skills to ace every SQL interview question
Modern data stack tools
Now, I do believe it helps to have experience with other tools as well. If you know how to use dbt, you are almost guaranteed to get an interview. They offer free courses you can take to learn the ins and outs of their open-source product. It also helps to be familiar with tools in various layers of the modern data stack. I recommend reading up on the following:
Ingestion: Stitch, Fivetran, Airbyte
Data Warehouse: Snowflake, Databricks, BigQuery
Transformation: dbt (yup, just dbt)
Orchestration: Prefect, Dagster, Airflow
Now, I’m purposely leaving out data visualization tools because I believe the analytics engineer’s role is to own ingestion to orchestration. Sure, they may be expected to build dashboards here and there, but that is primarily the role of the data analyst. I don’t think you need experience with visualization tools to be a great analytics engineer.
If you’re confident in your SQL and data modeling skills, and know most of the modern data stack tools, then here are some other topics I recommended touching upon:
📘 Engineering best practices to apply to your analytics workflow
📗 Data ingestion best practices
📙 Comprehensive framework for data quality management
Personality is everything.
Believe it or not, your personality is often a huge factor in whether a company hires you for a certain role or not. They need to see potential in you. Sometimes it’s not about what you already know but how much you are willing to learn. I’m a firm believer that I landed my current role because of my passion for learning. I had never built a modern data stack before but I was excited about it and genuinely wanted to learn all things MDS.
While this may only be the case for start-ups and smaller companies, personality goes far. Nobody wants to work with someone who doesn’t believe in what they’re doing and willing to try new things. Be willing to learn. Ask questions. Don’t be afraid to look dumb. Be genuinely curious.
If you want more tips on standing out in a job interview, check out this article.
Can you talk business?
One of the main reasons I sought out analytics engineering over data engineering was for business exposure. As a data engineer, I had no say in the decisions that were being made and what I worked on next. As an analytics engineer, I work with stakeholders to decide on what to prioritize and how to solve their problems.
Keep reading with a 7-day free trial
Subscribe to Learn Analytics Engineering to keep reading this post and get 7 days of free access to the full post archives.