
Speechify Software Engineer Interview Questions
& Process
Real candidates share what happened, how many rounds they had,
and how the experience turned out.
Based on 87 interview experiences · FREE TO READ
Candidate interview experiences
First-hand accounts from people who interviewed at Speechify.
Software Engineer
The interview started with an automated coding challenge that seemed poorly designed. No one from the hiring team was present, making it a low-cost evaluation for them, irrespective of their genuine hiring needs. The difficulty wasn't the issue for me, but rather the fairness and overall quality. The test environment had problems, and the 'technical support' link was broken, showing a lack of attention to detail. One question required an SSML parser, expecting candidates to know SSML specifications (like the single-tag rule) under time pressure. However, their own test cases violated valid XML or SSML rules. For example, one test accepted `< speech >< p > hello ` (with a space before the tag) even though it's invalid. This highlights a common problem: companies expect top talent but fail to meet basic standards themselves. Automated interviews might be free for them, but is our time free? I was told I reached a stage few candidates achieve and was advised to reapply in 60 days. While I appreciate the feedback, your interview process demonstrated a clear inability to evaluate performance effectively, making it an undesirable workplace.
- Write Python code to implement an LRU cache.
- Create a parser for SSML, which is a subset of XML.
- Develop a decoder to convert SSML into plain text.
Software Engineer
So the interview process had two parts, both were technical coding interviews. First was a 50-minute live SwiftUI Project, like a take-home but done live with camera on. The task was to build a basic SwiftUI app with navigation, lists, search, state management, and simple UI, only using SwiftUI and basic Combine, no UIKit. It was pretty much just enough time to finish. The second interview was a 90-minute Debugging & Async Challenge. A senior dev watched as I worked on an existing project. I had to find and fix bugs, memory leaks, and UI problems. Also, implement an async operation in three ways: callbacks, Combine, and async/await, making sure to have tests. Plus, fix a login bug. These tasks were separate, so I could do them in any order. They kept track of time and updated me every 30 mins. Code quality was key, though some of the Combine examples felt a bit tricky or weird. Even though I finished all the tasks during the interview, they let me have two extra days to clean up my code and send it back. Overall, it was a well-structured and tough technical process, especially the Combine parts. They were clear about the time limits, 50 mins for the first and 90 for the second. It was a bummer they didn't give any feedback after I got rejected, and the HR replies were sometimes slow or not quite consistent, even though they were polite.
- SwiftUI Challenge Task: implement a small app with multiple navigation pages, a list, search functionality, state management, and a simple UI. Requirements: SwiftUI and basic Combine.
- Debugging & Async Challenge Task 1: find and fix bugs, memory leaks, and UI issues.
- Debugging & Async Challenge Task 2: implement an async operation in three ways — callbacks, Combine, and async/await — with tests provided to validate the solution.
Software Engineer
So, first I had this HR chat, a quick screen. Then came a big coding challenge, like 90 minutes. It was all about React and TypeScript, set up in a GitHub repo, kind of like a real startup situation where you have to figure things out. The main goal was to see how I solve problems. I wasn't allowed to use any AI coding tools or extra libraries, just pure React/TypeScript and DOM stuff. They really wanted to see if I could grasp the requirements, write good, clean code, include tests, and basically manage on my own.
- Complete a 90-minute coding assignment in React and TypeScript, using the provided GitHub repository, following specific instructions, and without AI tools or external libraries.
Speechify Software Engineer Interview Questions
Quoted word for word from Speechify interview reports.
“Implement an SSML parser, converting from a String to a Node Tree.”
Read reports →“Create a parser for SSML, which is a subset of XML.”
Read reports →“How would you generate a list of all valid combinations of n pairs of parentheses?”
Read reports →“Can you parse HTML-like tags and convert them into XML format?”
Read reports →“Can you parse XML and use their speech engine to create a playback?”
Read report →“Can you build a text-to-speech application using the DOM API and React?”
Read report →“Can you traverse through DOM nodes to build a tree representation following special rules, like treating text nodes as distinct types and handling node clashes or filtering?”
Read report →“How would you refactor or improve an LRU cache implementation?”
Read report →“How would you compare two node trees and update them to be equal with minimal changes?”
Read report →Formats, difficulty and experience
Across all 87 Speechify interview reports.