DEV Community

Cover image for Latest BCG DS OA — Passed in 60 Minutes (Full Breakdown)
programhelp-cs
programhelp-cs

Posted on

Latest BCG DS OA — Passed in 60 Minutes (Full Breakdown)

I just completed the BCG DS OA today — 60 minutes, 4 questions, all heavily focused on practical data analysis and machine learning workflows.

The overall difficulty wasn’t extreme, but it was very engineering-oriented. This felt aligned with the working style of BCG X — structured, practical, and focused on real-world execution rather than algorithm tricks.

I used Python throughout (mainly pandas + sklearn). If you're comfortable with data cleaning, feature engineering, and model evaluation pipelines, the timing is manageable.

Question 1: Aggregation + Multi-Table Integration

The first question focused on aggregation and summary metrics. You need to read the driver dataset, compute the average rating, count drivers who speak a second language, calculate their proportion among all drivers, and then merge trip data to compute the successful completion rate.

The final step is to combine all metrics and export them into a CSV file. The challenge is not complexity but precision — ensuring correct denominators, proper grouping logic, and clean output formatting.

Question 2: Proper ML Preprocessing Pipeline

This section tests machine learning workflow discipline. You must load training and testing datasets, fill missing age values using the rounded mean from the training set, and encode categorical variables such as car model and second language.

Mappings must be built strictly from the training set and then applied to the test set to avoid data leakage. Tip amounts require standardization, driver grades (A/B) must be converted to binary values, and outputs must preserve five decimal places before saving to a new file.

This question evaluates whether you understand clean separation between training and testing processes.

Question 3: Multi-Table Joins + Business Feature Engineering

This question resembles real DS work. You must read driver, vehicle, and trip datasets, calculate days since last vehicle inspection, join data via car_id, and compute driving experience (2023 minus start year).

You also aggregate total likes received per driver across multiple dimensions and ensure drivers without trips receive zero likes. After standardizing column names and selecting required fields, you output the final dataset to collected.csv.

This part tests merge accuracy, datetime handling, and structured feature construction.

Question 4: Model Training + Class Imbalance + Threshold Tuning

The final question requires loading train, validation, and test datasets, splitting features and labels, and completing a full modeling pipeline.

Numerical features require median imputation and standard scaling. Categorical features require mode imputation and label encoding. A Random Forest model is trained with higher weight assigned to class B (label 1).

You then tune classification thresholds (0.3, 0.4, etc.) on the validation set, selecting the one that achieves precision above 0.8 while maintaining reasonable recall. The optimal threshold is applied to the test set for final predictions.

Overall Impression

This OA is not algorithm-heavy. It emphasizes structured data workflows, proper ML discipline, and production-oriented thinking.

If you’re preparing for BCG X or other North American DS roles and want structured guidance on similar OAs, you can reach out to Programhelp. Having experienced support to refine your workflow and avoid common pitfalls can significantly improve efficiency and confidence under time pressure.

Top comments (0)