Business Intelligence

Deploying a business intelligence solution is more than just "plug and play -- It requires a comprehensive approach. With over 30 successfully deployed BI solutions and years of experience, I can guide organizations through the process, from start to finish.

Example: BART Ridership, End to End

Built from public data on BART's website: 300+ monthly station-to-station ridership workbooks going back to 2001, in two different file layouts, plus station names and locations.

A Python ETL pipeline finds and cleans each workbook, unpivots the station-by-station matrices, normalizes both layouts, and loads one tidy table into a Power BI semantic model with station and map lookups. The report below is the result. Filter by station, see the long-term trend (including the 2020 drop and the recovery since), and find the busiest trips.

What does a BI project look like?

A business intelligence project is a complex undertaking that requires careful planning, execution, and management. Here are the key steps involved in deploying a BI solution:

  • Gather requirements and develop user stories (click to expand!)
  • Requirements gathering is an art form. The process can take anywhere from 1 week to 1 month, but this critical step ensures that all future development is done with the understanding that there's a common goal in mind. Projects with ambiguous or nebulous requirements have a high risk of failure and abandonment. I work with stakeholders to develop user stories that clearly outline the business needs and expectations for the project.
  • Design and implement data pipelines
  • Build and deploy Business Intelligence reports
  • Manage the project (PM work)
  • Document solution & signoff
  • Provide training and support to users

These are key steps in the process of deploying a business intelligence solution.

Planning
Gathering Requirements
  • User Stories
  • Write backlog items
  • Assigning, scheduling
↓
Development
• Agile Methodology
• User Feedback & Testing
↓
Execution
• Deployment
• CICD
• User Support

Project Management

Efficiently plan, organize, and manage resources to achieve project goals and deliverables using proven methodologies.

Developer and stakeholder burnout is a real risk when it comes to large scale software projects. An experienced, driven project manager is vital to prevent project delays or abandonment. I own my projects and drive them to completion, while energizing the team and making sure everyone feels empowered to do their best.


Business
Question
Investigation
Planning
Development
Deployment
Maintenance

Iterative Development

Continuously improve products through repeated cycles, incorporating feedback and adapting to changing requirements.

Reporting is never "done." The shifting landscape of business requirements and the evolving nature of data means that reporting must be continuously improved. This is why I use an iterative development process to ensure that the reports I create are always up-to-date and relevant. New questions will always arise, and I remain flexible to tackle the next challenge.


Planning
• Gathering Requirements
• User Stories
Development
• Agile Methodology
• User Feedback & Testing
Execution
• Deployment
• CICD
• User Support

CI/CD Deployment

Automate build, test, and deployment processes to deliver software quickly and reliably with continuous integration and delivery.

Failed deployments and mistakes in prod are are a major source of stress for everyone who relies on business reporting. Tightly controlled version control, user acceptance testing (UAT), and disaster recovery are essential to ensure the trustowrthiness and integrity of the data provided to the organization.