4th Apr 2018 12 minutes read How to Become a Database Analyst Aldo Zelen data analysis SQL basics Advanced SQL SQL interview questions SQL job market Table of Contents What Does a Database Analyst Do? The Database Analyst Career Path Entry Level: Junior Data Analyst The Interview Where to Start? Salary Mid-Level: Data Analyst The Interview Salary The Expert: Senior or Lead Database Analyst The Interview Salary Is a Career in Database Analysis Right for You? Curious about becoming a database analyst? Maybe you've taken some database courses at university and they really struck a chord. Or maybe you learned online. Now you're thinking about making a career out of working with databases. Where would you start? What should you expect at each phase of your professional development? In this post, we'll explore the challenging and exciting world of databases analysis. We'll go from the very beginning of a career to the apex of professional success. We'll look at the skills needed for every level and how to attain them. Finally, we'll consider the material and immaterial payoffs that come from working with databases. What Does a Database Analyst Do? Thanks to the current dynamic, data-driven business climate, database analysts are in high demand. Since database analysts work with business people and with technology, this is a good fit for anyone who likes to have a foot in both business and technology. Database analysts must be fluent in business topics (like financial reconciliation), but they also need technical skills (like knowing how to optimize databases). What does a database analyst actually do? There are many "flavors" of database analysis. A database analyst might work as a database modeler, a database developer, a database business analyst, and so on. However, all of these flavors require the same core skills, including: Logical database modeling Physical database modeling Report generation Optimizing database performance Tuning SQL queries Writing or revising database code Database analysts often develop database models that encapsulate all their organization's business data. They also have to work to a high standard; good modeling practices make everything run smoother and allow the speedier development of important features. When engaging in physical or logical modeling, analysts view the whole enterprise on a holistic level and enable others to do the same. Analysts also spend a lot of time writing and revising code. This includes tuning existing queries, writing new ones, or troubleshooting non-working queries. One day you might be developing in-database code for a procedural calculation; the next, you might be meeting with business owners or analysts to clarify project requirements. As with most other careers, you'll be given more responsibility (and more complicated tasks) as you get more experience. There are no shortcuts to database mastery, so be prepared to start small and work your way up. You're not just putting in time; you're learning what you need to become an expert database analyst. The Database Analyst Career Path Entry Level: Junior Data Analyst Entry-level or junior database analyst jobs are often filled by relative newcomers to the field – maybe recent uni grads, interns, or people with some DB knowledge that are transitioning into a new career. They know the fundamentals of database development and modeling, either having learned them formally at school or through online courses like LearnSQL.com. Interning is not a bad way to get started in the database professions. You're likely to find database-related internships at large financial firms, telecoms, or government agencies. Any organization that deals with small data, which needs to be structured and organized for analysis and reporting, is a good place to look for internships or junior data analyst positions. At this point in your career, you will be: Designing simple database models Indexing DB models based on queries' access paths Writing simple SQL scripts and reports Debugging existing SQL scripts Learning basic DB optimization The Interview Expect simple questions when you go in for an entry-level database analyst job interview. You may often be given an SQL test with some basic problems sets to solve (usually with pseudo-code). Sample interview questions: What is a transaction? What are indexes? What is referential integrity? What are you currently learning? Why did you choose that? You may also be asked to: Debug a simple database model Debug a simple query Write a simple SELECT statement Explain the first three normal forms Explain the different kinds of SQL JOINs Write a CREATE TABLE statement Knowing SQL basics will help you through the interview, but in some cases the basics may not be enough. It's best to be well-prepared on more advanced topics (like DDL and DML). This will give you an edge over less-knowledgeable candidates and can even nudge you towards the next stage in the hiring process. Your primary goal at this point should be to display that you have potential and that you want to grow professionally with this organization. Nobody looks for in-depth database knowledge at this stage, but a willingness to learn is important. Your employer wants to know that you will grow with the company and that you will invest extra time in acquiring new skills. One good way to showcase this is to include an online certificate with your CV or resume. Also include some simple database-related projects you did; they demonstrate that you are hard-working and that you take the initiative to learn new things. I would suggest that you include an ER diagram (a diagram visualizing database tables and their relations) for a small business. For that "wow!" effect, create a visually compelling model. You can find lots of them in the Vertabelo Modeler's blog. Many young database analysts are eager to prove themselves – and a bit impatient. Don't be in too much of a hurry. Take time to learn from senior colleagues and enhance your theoretical knowledge with real-world practice. There is no rush. Now is the time to get your foundations right before moving on; unlearning bad practices is really hard. Where to Start? The best place to start is with an organization that has a strong mentoring program. Look for large businesses, such as telecommunication or financial companies, or government agencies. Do some initial screening and find out if these organizations have educational budgets, mentorship programs, and defined career paths. A structured career path tells you what skills you must have, what books you need to read, and what courses you need to take to move up the ladder. This will provide you with the guidance you need to grow professionally. Alternatively, you could start with a smaller company or even a startup. Be aware, though, that things can get very chaotic and you could (because of time limitations) learn bad habits that will be hard to un-learn later in your career. Salary The salary for a junior database analyst job is not that different from any other software engineering position. In the US, that's around $60k a year. Expert Tip: Unlike other fields, it's relatively easy for junior database analysts to move to different industries (i.e. from telecom to insurance), as they are still finding their niche. Mid-Level: Data Analyst At the mid-level of their career, a database analyst has been in the role for a couple of years. They are confident in their knowledge and are looking for new challenges to broaden their professional horizons. This is when you tune up your SQL skills and brush up on the uncommon parts of SQL. You'll be learning new things, like geographic information systems inside the database or faster ways to retrieve data. Most database analysts stay at this level and are happy with it. Be careful not to stagnate at this point in your career, which is bad for a number of reasons. Instead, strive to expand your knowledge. Keep an eye on future career gains. The more you know, the better you can sell yourself. For example, if you expand your project management skills, you could lead data analyst teams – which means a raise in pay and potentially a new and interesting career pathway. As a seasoned analyst, you are expected to: Communicate with business owners, managers, and other stakeholders Model complex database logical designs with domain knowledge Create a physical model to support the logical model Tune SQL query statements Tune the database, using rudimentary DBA knowledge Get certified with your database of choice (e.g. Oracle MySQL, IBM DB2) Define development standards Mentor entry-level database analysts Mid-level database analysis should be able to communicate with business people directly, gathering requirements without a business analyst's help. Amongst other things, you will be constructing new and optimized models for the business and tuning queries to the capabilities of the chosen database platform. I would encourage you to get certified in whatever DB your organization uses. Certified professionals often get higher salaries than their non-certified peers, and the higher your level of certified mastery, the bigger the financial reward. The Interview At this skill level, you are expected to display experience and proficiency in SQL and database management. You should also have some significant domain knowledge in your industry. Domain knowledge is more important for business analysts, but some organizations expect DB pros to have it as well. You may be given a data analyst test to screen for fundamentals before the interview. Your potential employer may well give you a simple project to solve. This will demonstrate your knowledge and skill level. I would suggest that you use a real modeling tool (i.e. Power Designer or Vertabelo Modeler) instead of Visio or a painting tool. It will show that you are a serious professional with broad IT skills. Sample interview questions: What is partitioning? When do you use it? Can you explain the difference between OLTP and OLAP? What NoSQL technologies do you know? What is the difference between bitmap and B-tree indexes? What are you currently learning? Salary The salary for a mid-level database analyst is no different than other senior software engineering positions. That means around $80k in the U.S. Remember that actual compensation at this level varies by skill set. It is very important to invest in expanding your knowledge – and with it, your wallet! Expert Tip: Now is the time to find your niche and expand your knowledge of it. Technical breadth is also important, so explore other business fields as well. The Expert: Senior or Lead Database Analyst A senior or lead database analyst is at the pinnacle of their career; they have achieved mastery of their database. Almost all have spent at least 10,000 hours in the field and have invested a considerable amount of time in their professional development. What really sets master database analysts apart is their willingness to contribute to the professional community. They are the ones publishing material that is useful to other experienced DB pros. Everybody in the local DB community knows these masters' names. Other professionals expect them to be fountainheads of information, from which they can always learn something interesting and new. The expert database analyst will spend most of their time on high-level work, like: Implementing and developing database model patterns Working with project managers on high-level estimations Technical or team leadership Implementing database standards Constructing career paths for analysts in the team Creating database performance metrics Expert-level database analysts are expected to handle a large greenfield database project from inception to handover. They usually support project managers in high-level estimations that can entail thousands of hours of manpower. They provide technical leadership, making the quality of the model and the database code better by implementing various standards. They choose the best database model pattern for each purpose – i.e. deciding between a denormalized Kimball model or a highly-normalized data vault. Mentoring is also a huge part of this position. It is important to hand down knowledge to younger team members and to the database community in general. The Interview Interviewing an expert database analyst is mostly to learn if the person is the right cultural fit for the organization. This person has already proved their deep knowledge of the field with various technical papers and talks. The only remaining question is will the analyst be able to function in our company's project management framework, whether that's waterfall, scrum, agile or something else. Will they have enough interesting projects to keep them happy? This can be tricky, as high achievers can be hard to manage if they consider their work to be non-relevant. Sample interview questions: Tell us about a professional failure – how you survived it and what you've learned from it. Can you explain 5th or 6th normal forms? Where are they used in the industry? Can you explain how a general ledger is constructed? Where do you think that a vendor is going with a certain technology? How would you construct a mentoring program for new team members? What are you currently learning? Any expert analyst will have at least one failed project in their past. Their willingness to admit that it was a failure (and to learn from what went wrong) is what separates a true master from a merely experienced analyst. Salary Salaries at the expert level are hard to quantify. Many master data analysts are extremely well compensated; they may work for a notable company; they may own their own business, or they may work as highly-paid consultants. For a US-based employee, the lower boundary for income is around $100k. Expert Tip: Master one or two business niches in depth. Spearhead knowledge specific to your fields of expertise in your local community. Be aware of the breadth of database analysis in all parts of your industry. Is a Career in Database Analysis Right for You? Working with data is an excellent career choice. Database analysis requires a mix of skills, making it a great opportunity for business-savvy IT people and technically-inclined business people. If you like to know more about business than your average professional and you're passionate about data, this career will be very rewarding. Database analysts generally have a positive career outlook because: This position will always be in demand. The database industry is mature and stable. There is a good balance between the business and technical aspects of this job. There is plenty of room for growth and specialization. I hope this article has shed some light on what it's like to be a database analyst. From the very start, try to team up with knowledgeable professionals and good mentors. Seek ways to share your insight with others. Above all, follow the golden rules for success as a database analyst: Invest in your knowledge Understand your niche(s) Double-check your work Test everything Are you wondering if you're ready to try a new career in databases? Want to get started as a database analyst? Begin to build your skills now – check out LearnSQL now for free! Tags: data analysis SQL basics Advanced SQL SQL interview questions SQL job market