High-effort assessment, but feedback contradicted initial guidance
I applied for a Senior Android Engineer role and was invited to complete a technically detailed assessment involving typing speed measurement, real-time analytics, and behavioral data collection. The task was extensive and involved full UI, storage, and data tracking.
Before starting, I raised concerns about Android platform limitations regarding keystroke data—specifically, that key press/release times aren’t available with standard soft keyboards and would require building a custom IME. I was explicitly told by the company that building a custom keyboard was not required and that I should work with what the platform allows by default (TextWatcher, etc.).
I followed these instructions, built a complete and performant app, structured around SOLID principles, Jetpack Compose UI, RoomDB, coroutines, flows, and clean architecture. I included character-level error detection, pause handling, and detailed documentation of all architectural decisions.
The rejection feedback then criticized the lack of low-level keystroke analytics and mentioned architecture and modularity concerns without citing any specific examples. It felt dismissive of both the technical constraints we discussed and the substantial effort put into the solution.
If you're a developer considering working with ThreatFabric, I recommend caution. The expectations were not clearly aligned, and the feedback contradicted the guidance they gave. It’s disappointing to invest significant effort only to receive a generic response that ignores the actual constraints and design decisions.
I’d advise avoiding this kind of collaboration unless the expectations are clarified in writing up front — especially for senior roles where your time and expertise are valuable.