So you want to become a Power BI Developer, and wonder what skills you need to learn, what are the best resources to learn from, and where to start? This is an article and video explaining those in detail and helping you in your journey to become a Power BI Developer.
1. Data Modeling
I don’t start with Power BI Desktop or technical understanding of the product. I start with modeling instead. Data modeling is the principle of any data analysis system. No matter what BI tool you use, you need to have a good understanding of the data modeling. Without proper data modeling, your Power BI report will become slow, hard to maintain (a headache to maintain actually), not flexible to changes, and results in failure of the BI project.
What is Data Modeling?
Data Modeling is the tables, their definitions (columns), and their relationships. Data modeling is mostly done through pen and paper and with a full understanding of the requirement and the data source. I have written tons of articles on the subject of data modeling and also a book, and would strongly recommend Kimball’s book below as an important resource to study.
What to study?
The Data Warehouse toolkit is a book that I suggest everyone working with BI and data analysis to have as a reference in their library, each chapter of the book goes through an example of the dimensional model in the real world. The Basics of Power BI Modeling is a book that I wrote and brings those concepts in an easy-to-understand way into the Power BI and adds Power BI-specific concepts such as relationships into the play so that you can build your data model in a Power BI solution no matter how complex it is. I recommend both of these books as a great resource for data modeling.
If you are looking for free materials and quick reads, I suggest the article below as a starting point;
- Creating a Shared Dimension in Power BI Using Power Query: Basics and Foundations of Modeling
- Back to Basics: Power BI Relationship Demystified
- Power BI Basics of Modeling: Star Schema and How to Build it
- and more
2. Power BI Desktop
As a Power BI Developer, you need to know your tool. The Power BI Desktop is the tool that you will spend most of your time with it. Although Power BI Desktop looks easy to use, still, there are many bits and pieces to learn about it. There are some resources that can help you get a good grasp of it. I recommend the Power BI from Rookie to Rock Star book;
or many other getting started tutorials available online to learn about it.
3. Data Transformation and ETL:
ETL stands for Extract, Transform and Load. It means extracting data from the source system, transforming it to the desired shape, and loading it into the destination, which often is a data mart, data warehouse, or a Power BI dataset. Data transformation is another essential skill for a Power BI Developer. However, because there are many different source systems, and many different transformation technologies, the skill can be a bit variable in detail. Let’s go through some scenarios;
3.1 Enterprise ETL Developer
If you are working in an enterprise environment, then there is likely a data warehouse in place, and the data feeds into it using tools and services such as SSIS (SQL Server Integration Services), or ADF (Azure Data Factory), or any other tools and technologies. Sometimes the process might be a set of t-SQL procedures as well. If you want to be a competent ETL developer in these scenarios, you definitely need to work on your database development skills such as querying and writing t-SQL scripts, and understanding technologies such as SSIS and ADF.
3.2 Power BI ETL Developer
If there is no access to such tools and services or the costs of implementations and licensing are too high, then there is no problem. Power BI actually has a built-in ETL system called Power Query. The Power Query engine is a very powerful ETL engine that started as a component in Excel but now is used in Power BI, Azure Data Factory, Power Apps, and many other places for data transformation. Power Query is the ETL tool for a citizen data engineer because it facilitates the way you work with data with a comprehensive graphical interface.
Power Query when run online can be used as Dataflow, which will bring more control and governance for the Power BI implementation. Learning Power Query is very useful for a Power BI Developer, and I can say it is critical to learn if you don’t know any other ETL tools or services.
What to study?
The two books above are a comprehensive run-through guide for Power Query and data transformation in Power BI. There will be the third book of this series soon covering the dataflow concepts but if you are interested to learn more about dataflow already, please read through some of the documentation here.
Also, the links below are good starts towards Power Query;
4. Analytical Language
Power BI is an analytical tool, and it is essential that you learn the analytical language of it. This means, for many, learning DAX (Data Analysis eXpression language). However, you will gain some benefits if you learn some T-SQL, Power Query, and even MDX. The reason for this is that sometimes, you will find some of the calculations can be done in those layers and as a result less pressure on the runtime engine of the Power BI model.
What to study?
Learning DAX is taking time, and practice of course. Our friends at SQLBI; Marco and Alberto are of course the premier training providers in this and their books are full of learnings.
I recommend every blog, article, and book from Marco and Alberto (SQLBI) always as a great resource to learn DAX always. I have also written a book as you see above called Power BI DAX Simplified, in which I explained the complex concepts in an easy-to-understand way and I hope you’ll enjoy reading it.
Visualization is the front end of your BI system. This is the place that users will gain information from your system. It is essential to know how to convey the right message. Visualization seems easy, but it has to be done right. There are many best practices and principles to follow, and you also need to know what is possible and how to implement things in Power BI Desktop for it.
A proper data visualization guides the user to make informative decisions. A bad visualization makes the user confused.
What to study?
In addition to the sample resources above, there are tons of resources to learn more about visualizations in Power BI including;
6. Sharing, Deployment, and Architecture
In large BI teams, you might not need to know or worry about the sharing mechanism or how the deployment and the architecture of the Power BI implementation are because somebody is responsible for it. However, in smaller teams, you are expected to know some of these. These are critical components of a Power BI adoption. If you built the best report in the world, but don’t know the right way of sharing it, you may end up putting your confidential data somewhere that it shouldn’t be. You may have a lot of duplication in your code if you don’t know about architecture in Power BI. The governance of the Power BI implementation is a big area that starts with you as a developer knowing about the concepts in this section.
What to study?
The two books above are two books that cover the architecture and administration of Power BI solutions. There are many other articles to start learning about these concepts as well, such as the below;
- Power BI Sharing Methods Comparison – All in One Review
- Power BI Architecture for Multi-Developer Tenant Using Dataflows and Shared Datasets
- Connection Types in Power BI: Import Data or Scheduled Refresh; A Detailed Look Inside and Out
- The Power BI Gateway; All You Need to Know
7. Big data
Not every dataset is a big data. However, it might happen that you find yourself in a situation that you have billions and trillions of rows of data, and you need to analyze it. If your dataset is not large, you may skip the Big data skill improvement and leave it for when needed. However, I do recommend to get your self familiarized with concepts such as;
- Big Data
- analyzing large datasets
- performance tuning
- Azure Synapse and/or other big data technologies
There are tons of books, articles and videos you can start studying in this area. I suggest a few links below to start on your performance tuning journey;
- Power BI Fast and Furious with Aggregations
- Aggregation to speed up the performance of a Power BI report even if all IMPORTED
- Composite Model; DirectQuery and Import Data Combined; Evolution Begins in Power BI
- Phil Seamark’s series on Aggregations in Power BI
8. AI and Machine Learning: Next Level
You may think it is premature to do AI or Machine learning as a Power BI Developer. However, working with data gradually moves you from descriptive analysis towards predictive analysis. Your users will gain a lot of value if you can find patterns in data and guide them better towards more informative decisions.
There are some easy-to-use AI functionalities implemented in Power BI. However, I recommend you also to take a look at what can be done using a combination of Cognitive Services, and Azure Machine Learning, R, and Python with Power BI.
What to study?
The realm of Data Science is much bigger than these few resources mentioned here. However, these give you a good starting point towards what to learn and where to start.
9. Soft skills
There are some skills that you need that are not technical, such as understanding the requirement, the ability to run workshops for clients, and many more skills that are necessary to complete the job. Without having the soft skills you cannot go far with your tech skills, so try to improve both at the same time. Here are some of these skills that you need for this job;
- Answering RFP and providing an estimate of the work needed
- Speaking, Listening, Reading and Writing
- Turning the dial from technical to business and the other way around
- Can do attituge
- Team worker
- Project management
- Account management
10. Stay up-to-date: Power BI Community
Although the Power BI community is not a skill, it is a wonderful resource to learn about Power BI and connect with your peers either locally in your city or globally and online. That is why I added it here. There are Power BI user groups in most cities that can connect you to your peers. There are online forums to get your questions about Power BI answered. and there are plenty of blog authors and YouTube video creators who write and publish fantastic Power BI content regularly. here are pointers to just a few of these amazing resources;
- Power BI user groups in each city and country
- Power BI community (forum to get questions answered)
- Power BI Ideas (a website to get your ideas pushed to the Product team at Microsoft)
- Official Microsoft Power BI Blog
- RADACAD’s blog and YouTube channel
- SQLBI’s blog and YouTube channel
- Guy In a Cube YouTube channel
- Avi Singh – Power BI Pro
- Havens Consulting
- Kasper on BI
- Phil Seamark’s blog
- Matt Allington’s blog
- Chris Webb’s BI Blog
- Miguel Escobar’s blog
There are so many community resources that I have to apologize if I can’t list them all here (that might be another blog for itself). This is just list that comes to my mind now, it doesn’t mean if something isn’t in the list it is less worthwhile. Go and subscribe to all the above links and many other resources you can find online and stay connected with the Power BI community.
Being a Power BI developer requires some tech skills such as data modeling, data transformations, DAX language, visualization, and architecture. However, it also needs an understanding of soft skills. Learning Power BI is not a goal, it is a journey, being in touch with the Power BI community helps you to stay on the right path. I hope this article helps you in your path. If you have any questions, don’t hesitate to reach out to me.