article-spots
article-carousel-spots
programs
Real stories

Business Intelligence: Direction specifics, tasks, and personal experience

22 Jan 2021

Business Intelligence direction is often confused with Business Analysis. Together with Kristina Zuenok, BI developer from EPAM, we discuss what tasks are solved by specialists in this field, and what knowledge you need to have to start a career in BI. Kristina also told us about her learning experience in the EPAM training center, her first project, and gave useful tips for beginners.

Choosing a profession  

When I was in school, I had a high English level, so I planned to become a linguist. Besides that, I was interested in programming, participated in regional Olympiads and tournaments. We coded in Pascal and Python. Then I thought: if I choose a specialty related to information technology, I will never have English practice. On the other hand, programming professions seemed more attractive and promising. Then I could not even imagine that I would become a BI engineer and at the same time be able to work on foreign projects, where my knowledge of English would be very useful. 

As a result, I passed the exam in computer science better than in social studies and entered the Faculty of Applied Mathematics and Control Processes. We had a modern and varied program: we studied frontend in JavaScript, component programming in C#, PostgreSQL databases, also had courses in C++ and Java, cluster computing using Scala. At the university, I received an excellent theoretical basis and needed to choose a specific direction in which I want to work and develop, with which I encountered some difficulties. I think this happens to many. 

Entering the EPAM training center 

At that time, a friend of mine was taking Java training at EPAM. He advised me to investigate the Business Intelligence direction. We both did not fully understand what we should do, but he knew that the training program included topics that were interesting to me: working with databases, building data processing pipelines. I looked through the program, submitted a request, learned everything I could about databases in a couple of days, even learned the use of indexes and other complex things. 

During a face-to-face interview, they asked which databases I worked with and if I knew what Business Intelligence was. I said that I knew exactly what BI was and wanted to develop in that direction. However, I remember that I had little idea of what the specialists in this area did. In general, BI was often confused with Business Analysis. Therefore, after almost two and a half years at EPAM, when I conduct interviews with students, I also ask why they choose BI and if they know what BI developers do. 

About the difference between Business Analysis and Business Intelligence 

I usually explain the difference between these directions as follows: if you are a business analyst, then you communicate with the customer more. Often, the analyst’s task is to understand the customer’s business processes and convey this information to the team, create tasks, and consult the technical team on all business issues. It is easier to ask a business analyst in “your language.” Besides, the customer is not always available. An analyst is a kind of shield that separates the team from the customer and helps clarify requirements, identifies business needs, but does not write code. An analyst can also access the database, participate in the preparation of visualizations, check test cases, but the development is carried out by a BI engineer. I always say: if you want a lot of development in your work, then you need to go to BI, and if you want to communicate more with the customer and understand business processes, then go to BA. 

If we show the difference between the two directions with just one question, then for BI specialists it is “What happened?” when for BA specialists it is “Will it happen again?” 

The work of a BI engineer usually concerns three areas: Data Warehouse Modeling—creating a data warehouse, ETL processes (Extract, Transform, Load), which allow you to extract and load data into the warehouse, and Reporting—visualizing this data. These three broad areas are always present in one form or another in every BI project and often overlap. The work of the BI team results in processing and presenting company data so that the manager can look at the graphs and easily get answers to the eternal business questions: how to do it more efficiently, cheaper, and faster. For a BI engineer in EPAM, one project can be associated with visualization, another—with the creation of repositories and have nothing to do with visualization. A BI developer is a T-shaped specialist. 

About the learning process at the training 

What did I expect from the training? I wanted to start working because at the university we got a lot of theoretical knowledge and received not enough practice. I used to think that to work and gain money, you need to be a very cool specialist, that employers are reluctant to hire newcomers, and say, "come when you get some experience." Therefore, I liked it so much that at the EPAM training center, employees teach students what they need in their work. With a high probability, upon successful completion of the training, students are invited to the company. 

The training center had a friendly atmosphere. At the university, all the teachers were too serious and pompous, but here everyone speaks on a first-name basis. If you ask your mentor something, you get: “Look, I did a similar cool thing on the project, now I will tell you about it.” The most valuable thing they taught us not just theory, but they knew in practice what they were talking about. 

About the training program 

The training program was not easy. For example, I did not quite understand how to write a non-standard SQL query to a database without the loops I am so used to. Some of the students already had experience in solving such problems and managed to solve them quickly, while I sat and solved them until late at night. 

The assignments were not easy to complete, but we discussed them in class and received feedback from our mentor. Everyone had personal feedback, and in the end, all solutions we discussed together, but anonymously. As a result, it was clear how well you are at solving tasks compared to other students, but it was not embarrassing if you failed. 

From the knowledge I received at the training, I used almost everything later in my work. We had SQL in our program—this is the main thing a BI developer should know. We wrote queries to the database, and now we use this skill at work almost every day. We were taught analytical functions, aggregations, transformations. Probably only half of my colleagues use the most complex functions we learned, but it was useful anyway. We also studied data visualization: we learned how to build graphs, and what can be done for this on the base side, and what can be done on the frontend side. From ETL, we learned Talend, one of the most popular ETL tools in the world. In general, the training did not include anything we knew, and it could not be uninteresting or useless. 

Starting a career 

As an employee, I got in EPAM in the first part of my training, I did not have the second stage with a student project in the laboratory. When I studied at the training, I went through an interview with a customer and got straight to a real business project. So, then I simultaneously completed my studies and worked for the company. 

Once our teacher told us about some surprise. One of the company’s managers came to the class and told us about the opportunity to pass an interview for a real project, but for this, you must do a test task on data visualization. The tables contained information about people: their age, habits, hobbies, country of residence, academic performance, etc. It was necessary to install and master a new software (we were supposed to start learning it in the second part of the training), and in a day to make visualization the way we see it. It was a creative assignment. 

I created a lot of graphs about everything that came to mind. We built these graphs in Tableau—a beautiful and intuitive tool, it was easy to start learning visualization with it, and it was popular among customers. One graph showed that people with high academic performance were lonely. In the report, I wrote that the most successful people did not have enough time for their personal lives. The interviewers liked my approach, and I got into the company. A year later, I found those visualizations and realized how much I did not know then, but it was nice to know how I had grown professionally since then. 

Tasks on the first project 

EPAM found a customer who wanted to use the new Exago BI product for reporting. This product was almost never used at that time. EPAM did not have specialists who worked with this tool. It was decided to take a specialist with serious experience in visualization and four novice BI developers, who will study working with the program from scratch. At that time, the tool itself was not completed. It was a unique experience when we were completing a product that was in a startup state. 

From the very first project, I happily noted how wrong I was, thinking that having chosen development, I would forget English and would not use it. A good level of language proficiency is needed not only for reading the documentation, but also for daily communication, both with the EPAM team from all over the world, and with the customer or technical support of the product. 

Professional development in BI 

Now I know for sure that I will continue to develop as a technical specialist because I like working as a developer, test new functionality, understand how everything works, and automate routine. Probably, I would like to become an architect or chief engineer to take part in technological development, and not only see the finished product. 

Recommendations for beginners in BI  

Ask questions. This is the first thing I would recommend. At the training, I learned that I should always ask if something is not clear: why did we study this, what is the actual use of this knowledge? This question still helps me develop in the company. You need to look for the best solution, offer an alternative, and not just do what you were told. 

Practice more. Some people read information, for example, about databases, take theoretical courses, watch videos. It is better to install this database and try to perform some of the simplest tasks. When you come for an interview and say, “I was interested, but I didn’t try anything,” it seems to me that you did not need it. If you want to develop in some area, it is better to try the skill in practice. If you did not like it—try another one. This is the only way to find out what you like to do. 

Explore. As one of my schoolteachers said: “Programming is an experimental science.” Always try something new, do not be afraid to deviate from what is written in articles. Whatever you do (if it is not a working environment), “ctrl + z” will always help you. We are not doctors, after all. :) 

To become a diversified BI developer, you need to have at least a basic knowledge of programming languages. This will help add new functionality for loading data or any other customization. For example, we sometimes use Tibco Spotfire in our work. If you need to make complex visualization using this tool, you will have to write JavaScript code for functions, and JavaScript is also used in web development. 

To pass the interview for training, you need to know what databases are, that is, at what moment a set of tables become a database, how these tables should be related to each other, how to create the keys correctly. Of course, you should know SQL. These are the basics to learn if you plan to work with databases. Try to create a database, load an excel file with data into it, connect a trial version of Tableau and make graphs, at least somehow visualize information. After the interview, I immediately recommend enrolling such candidates for training. And do not forget about English, I also ask everyone about it in the BI laboratory, sometimes I can ask you in English what you want from the training or about your weekend. 

Here are some useful links to the material that I recommend reading for beginners:  

ETL with Talend—a convenient and useful ETL tool for data integration. Talend has a separate product for data preparation, data quality, data integration, application integration, data management, and big data. 

MS SQL Server Database—materials on databases. 

Reporting with Tableau—free tutorials on the Tableau visualization tool. 

Tableau Marathon—a marathon of useful knowledge on the Tableau Marathon of useful knowledge.