Evaluate coding efficiency
Overview
Socratic helps you understand your code delivery performance by analyzing pull request data from your Git repositories. Ask questions about merge time, review time, and throughput, and receive detailed insights with interactive visualizations that trend these metrics over time.
To connect Socratic to GitHub, go to Settings > Integrations > GitHub.
Code metrics may take up to 24 hours to appear after initial connection. They are refreshed nightly.
How it works
Socratic analyzes pull requests that are linked to your Jira issues to provide metrics on:
- Merge time - How long it takes from PR creation to merge
- Review time - Time from first review request to final approval (subset of merge time)
- Throughput - Number of pull requests merged over time
- Unlinked PRs - Pull requests not associated with any Jira issue
Socratic answers with detailed insights and interactive visualizations that trend code delivery changes over time.
The tool calculates metrics based on PR lifecycle events:
- Merge time: Calculated from when the PR was created until it was merged
- Review time: Calculated from when the first review was requested until the final approval
- Throughput: Count of PRs merged within the specified time period
For trending analysis, Socratic compares metrics across multiple time periods (monthly, quarterly, or custom ranges) to identify improvements or degradations in your code delivery process.
You can ask to see code metrics for:
- Repositories
- Teams
- Individual contributors
- Projects
- Issue types (e.g., Bug, Story)
- Labels
Types of questions you can ask
Here are some examples of questions you can ask, organized by category:
Team and contributor analysis
- "What was the average merge time for the Backend team last quarter?"
- "Show me PR throughput for Sarah Robinson last month"
- "Compare review time between Frontend and Backend teams for Q2"
- "Which team has the fastest merge time?"
- "Show me code metrics by team for the past month"
Repository analysis
- "What was the merge time for the api-server repo last month?"
- "Show me PR throughput trends for the mobile-app repo"
- "Compare merge time across all repositories"
- "Which repository has the longest review time?"
Project and issue type analysis
- "Show me merge time for the Engineering project last quarter"
- "What was the review time for bugs last month?"
- "How many defect PRs did we merge last quarter?"
- "Show me code metrics by issue type for the past month"
Label-based analysis
- "What was the merge time for work labeled 'Customer' last month?"
- "Show me PR throughput for issues labeled 'Tech Debt'"
- "Compare review time by label for Q1"
Tracking unlinked PRs
- "How many PRs were merged without linked issues last month?"
- "What percentage of our PRs aren't linked to Jira issues?"
- "Show me unlinked PRs for the past quarter"
Comparative analysis
- "Show me code metrics by person for last month"
- "Show merge time by project"
- "Show me code metrics by repo for last quarter"
Capabilities & usage
Socratic provides flexible options for analyzing your code metrics:
Specify time ranges
You can ask about different time periods:
- Specific dates: "from January 1 to March 31"
- Relative periods: "last month", "this quarter", "past 6 weeks"
- Predefined periods: "Q1 2024", "December 2023"
Filter by different dimensions
You can filter your analysis by:
- Repositories
- Teams
- People
- Projects
- Issue types
- Labels
Group results in different ways
Ask for breakdowns by:
- Repository
- Team
- Person
- Project
- Issue type
- Label
Available metrics
- Merge time - Days from PR creation to merge (shows decimals for values under 0.5 days)
- Review time - Days from first review request to approval (subset of merge time)
- PR count - Number of pull requests merged
- Unlinked PRs - PRs without associated Jira issues
Reading the results
Socratic provides a natural language summary of your code metrics, highlighting key insights and trends. The agent also provides interactive visualizations.
Depending on your question, you'll see:
Trend tab
- Line charts showing metric trends over time
- Comparison across multiple periods (e.g., past 5 months or quarters)
- Different lines for each entity being compared (e.g., different teams or repos)
- Units displayed in days (D) for merge and review time
Pull requests tab
Detailed table showing all merged PRs with:
- PR title and link
- Repository name
- Author
- Merge time (in days)
- Review time (in days)
- Merged date
Pull requests (no linked issue) tab
If PRs without linked Jira issues are found, you'll see:
- List of unlinked PRs with same details as above
- Percentage of total PRs that are unlinked
- Helps identify gaps in your issue tracking
Best practices
Follow these best practices to get the most value from code metrics:
1. Link PRs to Jira issues
- ✅ Include Jira issue keys in PR titles (e.g., "ENG-123: Add login feature")
- ✅ Use consistent format: PROJECT-NUMBER (e.g., "ENG-123", "MOBILE-456")
- ❌ PRs without issue keys won't be linked to Jira data
2. Be specific about time ranges
- ✅ "Show merge time for the past 30 days"
- ❌ "Show recent merge time" (too vague)
3. Use exact names when possible
- ✅ "Show code metrics for the api-server repo for Q2"
- ✅ "Show Sarah Johnson's PR throughput for the past month"
- ❌ "That repo's metrics"
4. Compare meaningful groups
- ✅ "Compare merge time between Backend and Frontend teams for Q1"
- ✅ "Show review time by repository for the past quarter"
5. Monitor unlinked PRs
- ✅ Regularly check what percentage of PRs lack Jira issue links
- ✅ Use this to improve your team's PR practices
Common use cases
- Engineering velocity tracking
- Code review process improvement
- Identifying delivery bottlenecks
- Team performance comparison
- Measuring impact of process changes
- Developer productivity insights
- Quality assurance of PR-to-issue linking