SoFi Software Engineer interview questions

52 Software Engineers have shared notes from their SoFi interviews, with the questions they were asked in each round. That is 85% of the 61 SoFi interview notes on Screna AI.

52 Software Engineer interview notes

SoFi·Software Engineer·Technical Phone Screen

Jul 2026
SoFi software engineering interview with a concurrency design problem that was more involved than I expected. The question looked like a straightforward semaphore exercise but kept growing in scope as we went.
  • Design and implement a thread-safe TaskExecutor that uses a semaphore-like permit system to cap concurrency, where tasks can be either blocking or fire-and-forget, and permits must always be released even on failure.

“I started with the semaphore acquire/release loop and got that part okay, but the blocking vs fire-and-forget distinction tripped me up.”

View Post

SoFi·Software Engineer·Hiring Manager Screen

Jul 2026
Hiring manager round at SoFi for a software engineer role, two-part format that felt more like a structured conversation than a standard behavioral screen. The project deep-dive was expected, but the 'teach me something' portion threw me a bit.
  • Walk me through a recent project: what was the problem, what was your role, what trade-offs did you make, and what was the measurable impact?
  • What would you do differently if you could go back and redo that project?
  • Teach me one technical concept or tool you've learned recently, as if you're explaining it to someone in my context.

“This is the kind of question where you think you're ready and then realize mid-sentence that your 'measurable impact' is kind of fuzzy.”

View Post

SoFi·Software Engineer·Technical Phone Screen

Jul 2026
SoFi software engineer interview that went deep on a classic jump game problem. They didn't just want code, they wanted the full treatment: proof of correctness, complexity analysis, edge cases, the works.
  • Given an array of non-negative integers where each value represents the max steps you can jump forward from that index, first determine if you can reach the last index from index 0, and then find the minimum number of jumps to get there. They wanted an O(n) time, O(1) space solution, plus a correctness proof, complexity analysis, and a full edge case walkthrough.

“This is jump game 1 and 2 stapled together, which I didn't expect.”

View Post

SoFi·Software Engineer·Technical Phone Screen

Jul 2026
SoFi software engineer interview with a graph traversal problem that sounds like a fun puzzle until you realize they want you to talk through complexity and cycle handling on top of writing the actual solution.
  • You're given a choose-your-own-adventure story modeled as a graph. Each node has options pointing to other nodes or ending nodes. Unlike a normal adventure where you pick one path, here you must traverse ALL options from every node. Find every reachable ending from the start node, handle cycles, and analyze the time and space complexity.

“The story framing threw me off for a second.”

View Post

SoFi·Software Engineer·Technical Phone Screen

Jul 2026
SoFi coding screen with a word-wrapping problem that's basically LeetCode 68 but without the justification step. Pretty straightforward if you've done greedy string problems before.
  • Given an array of words and a maximum line width, pack words greedily into lines so each line stays within the width limit. No need to pad or justify the lines, just return them as-is.

“Easier than the classic version since you skip the padding logic entirely.”

View Post

SoFi·Software Engineer·Onsite - Behavioral / Leadership

Jul 2026
Behavioral round at SoFi for a software engineer role. One question, cross-functional flavor, the kind that sounds straightforward until you're actually in it.
  • Describe a situation where another team refused or kept deprioritizing work you needed from them. How did you handle the disagreement, get everyone on the same page, and still get what you needed?

“I had a decent story for this but I think I spent too long on the backstory and rushed the resolution part, which is probably the only part they actually care about.”

View Post

SoFi·Software Engineer·Onsite - Behavioral / Leadership

Jul 2026
Behavioral round at SoFi for a software engineer role. Just the one question shared here but it was a meaty one about navigating conflict upward.
  • Tell me about a time you disagreed with someone significantly more senior than you. How did you handle it without damaging the relationship?

“This one made me pause because the instinct is to say something diplomatic and safe, but I think they were actually probing for whether you have a spine.”

View Post

SoFi·Software Engineer·Online Assessment (OA)

Jul 2026
SoFi OA for a software engineer role, two coding problems, nothing too wild but the second one had me staring at it longer than I'd like to admit.
  • Given a sorted array of request timestamps and a window size, find the maximum number of requests that fall within any inclusive time interval of that length.
  • Given a binary string, every second all adjacent '01' pairs swap simultaneously to become '10'. How many seconds until no '01' pairs remain?

“Sliding window, pretty textbook.”

View Post

SoFi·Software Engineer·Technical Phone Screen

Jul 2026
Interviewed for a software engineering role at SoFi and got two coding questions back to back. Both were pretty classic but one had a twist that slowed me down a bit.
  • Given a full binary tree where all leaves start at 0, implement set(index) and clear(index) operations on the leaves. A parent node should become 1 only when both its children are 1, and clearing a leaf should propagate the change back up through the ancestors.
  • Design and implement an LRU Cache that supports get(key) and put(key, value) operations, both in O(1) time, evicting the least recently used entry when capacity is exceeded.

“The propagation logic tripped me up more than I expected.”

View Post

SoFi·Software Engineer·Technical Phone Screen

Jul 2026
SoFi software engineering interview with a simulation-based coding problem. The question was more involved than I expected for a phone screen, definitely not a standard leetcode grind.
  • You have a class representing a collection of obstacle course runs. Implement a method that takes an in-progress run and returns the probability it will match or beat the current personal best, estimated via 10,000 Monte Carlo simulation trials. Each trial fills in the remaining obstacles by sampling from historical times recorded by other runs that reached each obstacle, including incomplete runs.

“The setup took me a while to internalize.”

View Post