database-expert
Expert database architect specializing in schema design, query optimization, data modeling, and migration strategies. Japanese: データベースエキスパート
Specialist in designing applicant tracking systems and recruitment workflows from job requisition through onboarding.
> /plugin marketplace add Fujigo-Software/f5-framework-claudeHow it fires
How this agent gets triggered: by you, by Claude, or both.
Context preview
The summary Claude sees to decide when to auto-load this agent.
Specialist in designing applicant tracking systems and recruitment workflows from job requisition through onboarding.
id: hr-recruitment-designer name: Recruitment System Designer tier: 2 domain: hr-management triggers: - recruitment - applicant tracking - hiring workflow - candidate management capabilities: - ATS design - Job posting workflows - Candidate pipeline management - Interview scheduling systems
Specialist in designing applicant tracking systems and recruitment workflows from job requisition through onboarding.
interface Candidate {
id: string;
// Personal Information
profile: {
firstName: string;
lastName: string;
email: string;
phone: string;
location: Address;
linkedInUrl?: string;
portfolioUrl?: string;
};
// Professional Background
resume: {
documentId: string;
parsedContent?: ParsedResume;
uploadedAt: Date;
};
experience: WorkExperience[];
education: Education[];
skills: Skill[];
certifications?: Certification[];
// Application Details
applications: Application[];
// Source Tracking
source: {
channel: SourceChannel;
campaign?: string;
referredBy?: string;
};
// Status
status: CandidateStatus;
tags: string[];
rating?: number;
// Compliance
eeocData?: {
gender?: string;
ethnicity?: string;
veteranStatus?: string;
disabilityStatus?: string;
collectedAt: Date;
};
// Metadata
createdAt: Date;
updatedAt: Date;
lastActivityAt: Date;
}
interface Application {
id: string;
candidateId: string;
jobId: string;
// Status
stage: ApplicationStage;
status: 'active' | 'hired' | 'rejected' | 'withdrawn';
// Pipeline
stageHistory: StageChange[];
interviews: Interview[];
assessments: Assessment[];
// Evaluation
scorecards: Scorecard[];
overallRating?: number;
recommendation?: 'hire' | 'no_hire' | 'maybe';
// Offer
offer?: JobOffer;
// Dates
appliedAt: Date;
lastStageChangeAt: Date;
}
type ApplicationStage =
| 'applied'
| 'screening'
| 'phone_screen'
| 'interview'
| 'assessment'
| 'final_interview'
| 'reference_check'
| 'offer'
| 'hired';interface JobRequisition {
id: string;
requisitionNumber: string;
// Position Details
position: {
title: string;
department: string;
team?: string;
location: string;
locationType: 'onsite' | 'remote' | 'hybrid';
employmentType: 'full_time' | 'part_time' | 'contract' | 'intern';
};
// Compensation
compensation: {
salaryRange: { min: number; max: number };
currency: string;
payFrequency: 'hourly' | 'annual';
bonus?: { type: string; target: number };
equity?: string;
};
// Requirements
requirements: {
description: string;
responsibilities: string[];
qualifications: {
required: string[];
preferred: string[];
};
experience: { min: number; max?: number };
education?: string;
skills: string[];
};
// Hiring Team
hiringTeam: {
hiringManager: string;
recruiter: string;
interviewers: string[];
};
// Approval
approval: {
status: 'draft' | 'pending_approval' | 'approved' | 'rejected';
approvers: Approver[];
approvedAt?: Date;
};
// Status
status: RequisitionStatus;
openDate?: Date;
targetFillDate?: Date;
closedDate?: Date;
closedReason?: string;
// Metrics
metrics: {
applicants: number;
qualified: number;
interviewed: number;
offers: number;
hires: number;
};
}
type RequisitionStatus =
| 'draft'
| 'pending_approval'
| 'open'
| 'on_hold'
| 'filled'
| 'cancelled';interface InterviewSchedulingService {
// Availability
getInterviewerAvailability(
interviewerIds: string[],
dateRange: DateRange
): Promise<AvailabilitySlot[]>;
// Scheduling
scheduleInterview(request: ScheduleRequest): Promise<Interview>;
rescheduleInterview(interviewId: string, newSlot: TimeSlot): Promise<Interview>;
cancelInterview(interviewId: string, reason: string): Promise<void>;
// Self-scheduling
generateSelfScheduleLink(
applicationId: string,
options: SelfScheduleOptions
): Promise<string>;
// Calendar sync
syncWithCalendar(interviewId: string): Promise<void>;
sendCalendarInvites(interviewId: string): Promise<void>;
}
interface Interview {
id: string;
applicationId: string;
// Type
type: InterviewType;
round: number;
// Participants
interviewers: Interviewer[];
candidate: { id: string; name: string; email: string };
// Schedule
scheduledAt: Date;
duration: number; // minutes
timezone: string;
location: InterviewLocation;
// Status
status: 'scheduled' | 'confirmed' | 'in_progress' | 'completed' | 'cancelled' | 'no_show';
// Feedback
scorecards: Scorecard[];
// Meeting
meetingLink?: string;
conferenceDetails?: ConferenceDetails;
}
type InterviewType =
| 'phone_screen'
| 'video'
| 'onsite'
| 'panel'
| 'technical'
| 'behavioral'
| 'case_study'
| 'presentation';interface Scorecard {
id: string;
interviewId: string;
interviewerId: string;
// Ratings
criteria: ScorecardCriterion[];
overallRating: number; // 1-5
recommendation: 'strong_hire' | 'hire' | 'no_hire' | 'strong_no_hire';
// Feedback
strengths: strinRepo: Fujigo-Software/f5-framework-claude
Expert database architect specializing in schema design, query optimization, data modeling, and migration strategies. Japanese: データベースエキスパート
Expert DevOps architect specializing in CI/CD pipelines, infrastructure as code, containerization, and monitoring. Japanese: DevOpsアーキテクト
Mobile app architecture specialist. iOS, Android, React Native, Flutter.
Backend architecture specialist. Microservices, APIs, databases.
Frontend architecture specialist. React, Vue, Angular, Next.js.