← Back to Directory

moveworks

Mid-sized

Moveworks is an enterprise AI company that provides an AI-powered platform for automating employee support and IT service desk tasks through conversational agents. It is known for using natural language understanding and generative AI to resolve workplace issues across functions like IT, HR, and finance.

5 interview notes · updated Jul 2026

moveworks·Software Engineer·Technical Phone Screen

Jun 2026
Moveworks software engineering interview with a coding question that was more involved than it first looked. The problem was framed around Hangman but was really testing how you think about frequency analysis and candidate filtering under constraints.
  • Given a Hangman game state, implement a function that picks the next best letter to guess. You get the current pattern with revealed letters and blanks, the set of already-guessed letters, and a word list. Filter the word list to candidates that match the pattern and don't contain any letters known to be wrong, then pick the unguessed letter with the highest total frequency across those candidates. Walk through your input preprocessing, algorithm design, time and space complexity, and how you'd break ties deterministically.

“I spent the first few minutes just parsing what they were actually asking.”

View Post

moveworks·Software Engineer·Technical Phone Screen

Jun 2026
Interviewed for a Software Engineer role at Moveworks and got a Mastermind-style word guessing problem. The core challenge was designing a strategy to identify a secret word from a list using feedback from each guess, within a fixed number of attempts. Interesting problem but the guess-limit constraint is what makes it actually hard.
  • Given a list of candidate words of equal length, design a strategy to identify an unknown secret word by making guesses and receiving feedback on how many character positions match exactly. Your solution must find the word within a limited number of guesses.

“The feedback mechanism is simple enough but figuring out how to prune the candidate list efficiently after each guess is where I got stuck for a bit.”

View Post

moveworks·Software Engineer·Technical Phone Screen

Jun 2026
Got a coding problem at Moveworks for a software engineer role that was basically a multi-step string filtering and transformation pipeline. It looked like a clean algorithm question on the surface but had enough edge cases and layered logic that it took a while to even fully parse what was being asked.
  • Given a list of strings and a pairwise similarity function, implement a multi-step pipeline: first filter strings by the proportion of their most-frequent characters, then apply a similarity-based filter on the remaining candidates, then remove characters shared with any other original input string, and finally concatenate the results.

“This one took me an embarrassingly long time just to understand.”

View Post

moveworks·Software Engineer·Technical Phone Screen

May 2026
Interviewed for a software engineering role at Moveworks and got a string similarity problem that looked deceptively simple at first glance. The math is straightforward once you break it down, but the edge cases are where things get interesting.
  • Given two strings, compute their Jaccard similarity using token sets: lowercase the input, split on non-alphabetic characters, discard empty tokens, deduplicate, then return the size of the intersection divided by the size of the union. Both sets empty should return 1.0.

“The tokenization part is what trips you up if you're not careful.”

View Post

moveworks·Software Engineer·Technical Phone Screen

Apr 2026
Moveworks SWE interview with a pretty gnarly string manipulation problem. The question had multiple layered steps and I spent a good chunk of time just making sure I understood what was actually being asked before writing a single line.
  • Given a list of strings, find the character(s) with the highest frequency in each string (including ties), compute the proportion of those characters relative to the string length, identify the strings with the lowest proportion, then remove from each of those strings any character that appears in any other string in the original list. Concatenate what remains and return it.

“This took me a few minutes just to parse.”

View Post