1p3a Question · Oct 2025

Sigma Computing Frontend Onsite Interview Experience and Questions

SWE Onsite

Question Details

Context This interview involved a coding challenge focused on a spreadsheet class implementation. It served as the second round of the process, thematically linked to the first round but with incr

Full Details

Context This interview involved a coding challenge focused on a spreadsheet class implementation. It served as the second round of the process, thematically linked to the first round but with increased difficulty.

Problem Setup You are provided with a pre-built spreadsheet class representing a grid of M rows and N columns. The class contains the following methods: * set_cell(row, col, value): Sets data at a specific coordinate. * get_cell_value(row, col): A stubbed function requiring implementation. * print_sheet(): Iterates through all rows and columns to print values. * parse_formula(formula): A utility function to assist with parsing. * op(a, b): A "magic" function (currently addition) that tracks the number of times it is executed via an internal counter.

Part 1: Implementation The objective is to implement the get_cell_value(row, col) method. Cell values can be either a raw integer or a formula string in the format =(row1, col1)@(row2, col2).... Using the parse_formula utility, which returns a list of operand coordinates (e.g., [(row1, col1), (row2, col2)]), the implementation must resolve these dependencies and calculate the correct result using the op function.

Part 2: Performance Optimization The second task focuses on minimizing the execution count of the op(a, b) function. Because every call to op increments a counter, the goal is to optimize the class so that redundant calculations are avoided. Specifically, if print_sheet() is called multiple times without data changes, the system should not re-calculate formulas. This requires modifying the Spreadsheet class to implement caching or memoization strategies.

Interview Experience The process simulated a real-world working session rather than a standard algorithmic puzzle. Success relied on the ability to modify and incorporate existing code while maintaining clear communication.

About This Question

This is a reported interview question from a sigma computing interview for a swe role during the onsite round reported in 2025.

It covers the following topics: Dynamic Programming, Matrix, Strings, System Design .