← IBM Interview Insights

IBM·Data Scientist·Online Assessment (OA)·Junior

JuniorPrefer not to say
May 2026Remote

Summary

Took the IBM Data Science OA blind and it was a rough ride. The SQL part was fine if you knew the right function, but the coding question was genuinely brutal and I basically gave up after passing 2 out of 15 test cases.

Questions Asked (2)

Q1

SQL question requiring knowledge of a specific built-in SQL function.

Data Modeling
Author's notes

Not bad if you happen to know the function they're looking for.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

First, identify the specific SQL function the question is testing (e.g., window function, date function, string function) and state its purpose and syntax. Then, explain how it works with a concrete example, and discuss its relevance to data modeling or common data science tasks at IBM.

Pro tip: Mention that while the function is powerful, its performance can vary by database (e.g., IBM Db2 vs. PostgreSQL), so always check the execution plan and consider alternatives for large datasets.

1. Identify the function

Clarify which built-in SQL function the question refers to and its category (e.g., aggregate, window, date).

2. Explain syntax and behavior

Describe the function's syntax, arguments, and return value, including any nuances like null handling or ordering.

3. Provide a concrete example

Write a short SQL query using the function on a sample table to illustrate its output.

4. Relate to data modeling

Discuss how this function can be used in data modeling tasks, such as calculating running totals, ranking, or date transformations.

5. Address performance and alternatives

Mention performance considerations and possible alternative approaches or functions.

Key Points to Mention

  • The function's exact syntax and return type
  • Use cases in data science (e.g., window functions for time-series analysis)
  • Differences across SQL dialects (e.g., IBM Db2, PostgreSQL, MySQL)
  • Performance implications and indexing strategies
  • How the function supports data modeling goals (e.g., normalization, denormalization)
  • Common pitfalls (e.g., NULL handling, ordering requirements)

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q2

A coding/algorithmic problem that required a combinatorics-based insight rather than any standard brute-force approach.

Algorithms & Data Structures
Author's notes

Completely lost on this one.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by restating the problem and clarifying constraints, then identify the combinatorial structure (e.g., counting, permutations, combinations) that allows a closed-form or dynamic programming solution. Derive the insight step-by-step, validate with small examples, and analyze time/space complexity to ensure it beats brute force.

Pro tip: Demonstrate that you can recognize when a problem is a counting problem in disguise and use combinatorial identities or generating functions to simplify. Also, mention how you would test edge cases and handle large inputs efficiently.

1. Understand the problem

Restate the problem in your own words, ask clarifying questions about input size, output format, and constraints. Identify what makes brute force infeasible.

2. Identify combinatorial structure

Look for patterns like counting subsets, permutations, or sequences. Consider if the problem can be mapped to known combinatorial objects (e.g., binomial coefficients, Catalan numbers).

3. Derive the insight

Use combinatorial reasoning to find a formula or recurrence. For example, use inclusion-exclusion, dynamic programming with combinatorial states, or generating functions.

4. Validate with examples

Test your formula on small cases by hand or with code. Ensure it matches brute force for small inputs and handles edge cases.

5. Analyze complexity and optimize

Determine time and space complexity. If needed, optimize using memoization, precomputation, or mathematical simplifications.

Key Points to Mention

  • Combinatorial counting techniques (permutations, combinations, binomial coefficients)
  • Dynamic programming with combinatorial states
  • Inclusion-exclusion principle
  • Generating functions or closed-form formulas
  • Time and space complexity analysis
  • Edge cases and validation with small inputs

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.