Overview
The leaderboard is available exclusively to Salespersons. Managers can view individual performance through the “My Team” feature and analytics dashboards.
Performance Index
Normalized metric measuring profit generation rate over time since registration
Top 10 Ranking
Displays the highest performing salespersons across the entire organization
Target Recommendation
AI algorithm suggests personalized profit targets to improve performance
Real-Time Updates
Rankings update automatically as sales are recorded
Accessing the Leaderboard
Salespersons can access the leaderboard from their dashboard:Open Navigation Drawer
Tap the hamburger menu icon in the top-left corner of the Salesperson dashboard.
Performance Index Calculation
The performance index is a time-normalized metric that ensures fair comparison between salespersons who joined at different times.How It’s Calculated
Retrieve Total Profit
For each salesperson, calculate total profit from all sold items:Source:
LeaderBoardSalesperson.java:168-178Get Signup Timestamp
Retrieve the salesperson’s registration timestamp from the LeaderBoard node:Source:
LeaderBoardSalesperson.java:193-206Calculate Days Active
Determine how many days the salesperson has been active:Source:
LeaderBoardSalesperson.java:20686400 is the number of seconds in a day (24 × 60 × 60). Adding 1 ensures salespersons don’t have zero days on their first day.
Performance Index Example
Real-World Example
Real-World Example
Salesperson A:
- Joined: 30 days ago
- Total Profit Generated: $15,000
- Performance Index: 500/day**
- Joined: 5 days ago
- Total Profit Generated: $3,000
- Performance Index: 600/day**
Leaderboard Display
Data Model
The leaderboard uses two key data structures:LeaderBoardObject.java:7-33
Sorting and Ranking
The leaderboard sorts salespersons by performance index in descending order:LeaderBoardAdapter.java:53-69
Leaderboard Item Layout
Each leaderboard entry displays:Rank
Position from 1-10
Profile Picture
Gravatar image based on email
Salesperson Name
Full name
Performance Index
Daily profit average
LeaderBoardAdapter.java:71-75
Target Recommendation Algorithm
The leaderboard includes an intelligent recommendation system that suggests personalized profit targets.How It Works
Access Recommendation
Tap the floating action button (FAB) on the leaderboard screen:Source:
LeaderBoardSalesperson.java:63-68Find Current Salesperson
The system identifies your current performance index:Source:
LeaderBoardSalesperson.java:91-100Calculate Target
The algorithm calculates your target profit:Source:
LeaderBoardSalesperson.java:106-107Formula: Target = (Current PI + Gap to Top) × 1.10The 1.10 multiplier adds a 10% stretch goal to encourage continuous improvement.
Target Example
Example Calculation
Example Calculation
Your Current Performance:
- Performance Index: $400/day
- Performance Index: $600/day
- Gap to Top: 400 = $200
- Catch Up Target: 200 = $600
- Stretch Goal: 660/day**
User Interface
Loading State
While calculating performance indices and rankings:LeaderBoardSalesperson.java:59-213
RecyclerView Implementation
The leaderboard uses a RecyclerView for smooth scrolling:LeaderBoardSalesperson.java:231-235
Real-Time Updates
The leaderboard recalculates rankings whenever:- A salesperson records a new sale
- Inventory items are updated
- You navigate to the leaderboard screen
Common Use Cases
Checking Your Rank
Checking Your Rank
- Open the navigation drawer
- Tap “Leaderboard”
- Scroll through the top 10 list
- Find your name and rank
- Compare your performance index with others
Setting Personal Goals
Setting Personal Goals
- View the leaderboard
- Tap the FAB button
- Review your recommended target
- Note the target profit per day
- Calculate how many sales you need to reach the target
- Track progress by checking the leaderboard regularly
Competitive Motivation
Competitive Motivation
- Check the leaderboard daily
- Identify salespersons just above your rank
- Calculate the performance index gap
- Focus on closing deals to increase your daily average
- Monitor your climb in the rankings
New Salesperson Tracking
New Salesperson Tracking
As a new salesperson:
- Your initial performance index may be volatile
- Focus on consistent sales over your first month
- Your index will stabilize as you accumulate more days
- Don’t be discouraged by veterans with lower daily rates but higher total sales
- Use the target recommendation to guide your efforts
Performance Tips
Consistency Wins
Maintain steady sales every day rather than sporadic high-volume days for better performance index
High-Margin Items
Focus on items with higher profit margins to boost your daily average faster
Early Sales
Log sales early in the day to see your ranking improve in real-time
Target Focused
Use the recommendation algorithm weekly to set realistic short-term goals
Understanding the Algorithm
Why Time-Normalized Metrics?
Why Time-Normalized Metrics?
Time normalization ensures fair competition:Without normalization: A salesperson who joined 2 years ago will always rank higher than a new hire, regardless of current performance.With normalization: A new salesperson with strong daily sales can quickly rise in rankings, while veterans must maintain high performance to stay on top.This creates a meritocratic system that rewards current performance rather than tenure.
Why the 10% Stretch Goal?
Why the 10% Stretch Goal?
The recommendation algorithm adds 10% to prevent complacency:
- Motivation: Encourages exceeding the current top performer
- Growth Mindset: Promotes continuous improvement
- Realistic: 10% is challenging but achievable
- Team Elevation: As individuals improve, the entire team’s performance rises
Limitations
Rankings are calculated synchronously when the leaderboard loads. In large teams, there may be a brief loading period while performance indices are computed.