Preparing for a Software Engineer Role at Speechify? Here's What to Expect in the First Round
If you've applied for a Software Engineer position at Speechify and have been invited to take their online assessment, this post will give you a clear idea of what to expect.
The first round involves solving a coding challenge hosted on a private GitHub repository. Once you're granted access, you'll have 90 minutes to complete the task. After the time limit, your access to the repository is automatically revoked.
Below is the problem statement from the assessment:
Project Overview
The project's goal is to implement an LRU Cache, an SSML Parser, and a helper function for converting an SSML Node Tree to a plain text string.
Task Details
The questions to solve are in src/main/java/com/speechify
and the tests can be found in src/test/java
Implementation Checklist
createLRUCache: Implement a LRU Cache Provider with
get
andset
methods.parseSSML: Implement a SSML Parser that takes a SSML string and returns a SSML Node Tree.
Do NOT use or refer to any pre-existing XML parsing libraries.
ssmlNodeToText: Implement a function that takes a SSML Node Tree and recursively converts it to a plain text string.
Time to Implement
1 Hour 30 Minutes
Development Guidelines
Do's
Write clean, maintainable, and well-documented code.
Please follow the best practices and coding standards.
Test cases are provided for all methods; use them to ensure that your code is correct and meets our requirements.
You are free to use any official documentation or language references (MDN, Node Docs, etc).
You can use the debugging tools and native IDE features (only standard Auto-Completion)
Don'ts
Do NOT use any external libraries for the implementation.
DO NOT use any Coding Assistants like GitHub Copilot, ChatGPT, etc or any other AI based tools.
DO NOT visit direct blogs or articles related to implementation of the tasks.
DO NOT use Stackoverflow or any other forum websites.
Solution
Refer : https://github.com/vinodjayachandran/cxp-functional-java-vinodjayachandran