2024–2025
  • UI/UX
  • Product
  • Design Systems
  • Prototyping

Jitera
enterprise SaaS design

Jitera is an AI-powered documentation and test automation platform for enterprise teams. I joined as the sole designer, working with 3 product owners, an engineering manager, and 15+ engineers.

Due to NDA, I can't share screenshots of the shipped product. Instead, I'll show the React prototypes I built to communicate design intent to the team — which is where the interesting work happened anyway.

Design system

No design system existed when I arrived. I built one from scratch.

Dark theme first. I extracted tokens for color, typography, spacing, and built out components—buttons, forms, dropdowns, tables, and everything in between. The system lived in Figma, but I didn't stop there. Engineers implemented most components as a React package embedded in the product's front-end. I added some components from scratch, and reviewed and tweaked nearly everything else at the code level to make sure the implementation matched the design. Not just redlines and comments, but actual PRs.

When the team needed to move faster during a critical PMF push, we decided to replace the proprietary system with shadcn. I made the call alongside engineering. We weren't going to maintain a custom system when speed mattered more. I then augmented shadcn with product-specific components that weren't covered out of the box.

Prototypes

Static Figma files couldn't communicate the interactions I cared about. I built functional React prototypes for the engineering team — not to hand off, but to make the intended feel undeniable.

AI test generation. The problem: how do you show an AI agent generating tests in real time without the interface feeling broken? Users needed to understand the process was working, not frozen. I designed the interaction around a prompt-to-output flow with streaming feedback — so users could watch tests appear as the agent worked, step by step.

Try it: Click the sparkles icon in the top right corner to open the agent panel. Type anything into the prompt — the content doesn't matter. The prototype shows how the interface keeps users informed throughout generation: what's being worked on, what's already done, and that something is always happening.

Manual test management. Complex test suites need power-user interactions: reordering steps, creating new cases quickly, navigating with keyboard shortcuts. None of this is possible to spec in static screens. The prototype shows drag-to-reorder, keyboard shortcuts, and the transitions between states. It was built specifically so developers could feel the intended rhythm before implementing it.

Try it: Almost everything has a keyboard shortcut — hover over any button to see it. When creating steps, you can save and move to the next one without touching the mouse. Once you have multiple steps in a test case, grab the drag handle on the left to reorder them. The goal was to make building a large test suite feel fast, not tedious.

Database generation. Background processes are easy to get wrong. Show nothing and users assume something broke. Show too much and it becomes noise. This prototype focuses on progress feedback and micro-animations — each completed step gets a small moment of acknowledgment, then the UI moves on.

Beyond the prototypes

The product was more complex than what's shown here. I designed settings interfaces for multiple user roles — super admins, admins, and regular users — each with different permissions and views of the same underlying data. Getting that hierarchy right without making the interface feel different for each role was one of the more interesting challenges.

Documentation management was another core area. The main challenge was making editing feel lightweight in a product that was otherwise dense and technical. I also designed import and export flows covering multiple file formats — the kind of unglamorous but frequently used feature that's easy to get wrong.

Agent and generation flows appeared throughout the product, not just in test cases. Similar to the prototype above — designing for AI processes that take time, keeping users informed without making them anxious about whether something is working.