MATIH Platform is in active MVP development. Documentation reflects current implementation status.
15. Workbench Architecture
Onboarding UI
Persona Selection

Persona Selection

The Persona Selection page allows new users to choose their primary role and customize their platform experience. The selected persona determines the default workbench, response style, query suggestions, and UI layout the user will see throughout the platform.


Available Personas

PersonaIconDescriptionDefault Workbench
Data AnalystChart iconExplore data, build dashboards, track KPIsBI Workbench
Data EngineerPipeline iconManage pipelines, monitor data qualityData Workbench
ML EngineerBrain iconTrain models, deploy ML workloadsML Workbench
ExecutiveBriefcase iconHigh-level insights, strategic reportsBI Workbench
DeveloperCode iconBuild integrations, use APIsAgentic Workbench

Selection Interface

The page displays persona cards in a grid layout. Each card includes:

interface PersonaCard {
  id: string;
  title: string;
  description: string;
  icon: ReactNode;
  capabilities: string[];
  recommended_for: string;
}

Card Content

Each persona card shows:

  • Persona title and icon
  • Brief description (1-2 sentences)
  • Three key capabilities
  • "Recommended for" subtitle

Persona Impact

The selected persona configures multiple aspects of the user experience:

AspectConfiguration
Default workbenchWhich workbench opens by default
Navigation orderSidebar item ordering by relevance
Response verbosityConcise for experts, detailed for beginners
Query suggestionsTailored to the persona domain
Chart defaultsChart types matching the persona workflow
Onboarding next stepsConnection setup guidance for the persona

Sub-Persona Options

After selecting a primary persona, optional refinements are offered:

Primary PersonaSub-Options
Data AnalystBusiness Analyst, Financial Analyst, Marketing Analyst
Data EngineerETL Engineer, Data Platform Engineer, Analytics Engineer
ML EngineerResearch Scientist, MLOps Engineer, Applied ML
ExecutiveCEO/CTO, VP Analytics, Department Head
DeveloperBackend Developer, Full-Stack Developer, Data App Developer

Skill Level Assessment

An optional skill assessment helps calibrate the AI response detail level:

LevelSQL KnowledgeAI FamiliarityResponse Style
BeginnerNone to basicNew to AI toolsStep-by-step explanations
IntermediateComfortable with SQLHas used AI assistantsBalanced detail
AdvancedExpert SQL/dataPower userMinimal explanations

Persistence

The persona selection is stored in the user profile and can be changed later through settings:

const handlePersonaSelect = async (persona: string) => {
  await apiClient.put('/api/v1/users/me/preferences', {
    persona: persona,
    skill_level: selectedSkillLevel,
  });
  navigate('/onboarding/connection');
};

Analytics

EventDescription
onboarding.persona.viewUser viewed persona selection
onboarding.persona.hoverUser hovered over a persona card
onboarding.persona.selectUser selected a persona
onboarding.persona.changeUser changed their initial selection