<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Siddhesh Patil</title>
    <description>The latest articles on DEV Community by Siddhesh Patil (@siddhesh_patil_31b68af8e0).</description>
    <link>https://dev.to/siddhesh_patil_31b68af8e0</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3898601%2F303431b0-7d66-4e45-9576-db48576b8bfa.png</url>
      <title>DEV Community: Siddhesh Patil</title>
      <link>https://dev.to/siddhesh_patil_31b68af8e0</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/siddhesh_patil_31b68af8e0"/>
    <language>en</language>
    <item>
      <title>From Skeleton to Production: Building HR Goal Tracking Portal with GitHub Copilot</title>
      <dc:creator>Siddhesh Patil</dc:creator>
      <pubDate>Fri, 29 May 2026 15:36:13 +0000</pubDate>
      <link>https://dev.to/siddhesh_patil_31b68af8e0/from-skeleton-to-production-building-hr-goal-tracking-portal-with-github-copilot-3ecg</link>
      <guid>https://dev.to/siddhesh_patil_31b68af8e0/from-skeleton-to-production-building-hr-goal-tracking-portal-with-github-copilot-3ecg</guid>
      <description>&lt;p&gt;This is a submission for the &lt;a href="https://dev.to/challenges/github-2026-05-21"&gt;GitHub Finish-Up-A-Thon Challenge&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;I built the &lt;strong&gt;Atomberg Goal Setting &amp;amp; Tracking Portal&lt;/strong&gt; — a full-featured, &lt;br&gt;
role-based HR performance management system for Atomberg Technologies (a &lt;br&gt;
fast-growing Indian consumer electronics brand).&lt;/p&gt;

&lt;p&gt;The portal manages the &lt;strong&gt;complete employee performance lifecycle&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🎯 &lt;strong&gt;Goal Setting&lt;/strong&gt; — Employees create goals with weightage, UoM type, and 
thrust area alignment. Business rules enforced: max 8 goals, total 100% 
weightage, minimum 10% per goal&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Manager Approval Workflow&lt;/strong&gt; — Submit → Review → Approve / Return for Rework&lt;/li&gt;
&lt;li&gt;📊 &lt;strong&gt;Quarterly Check-ins&lt;/strong&gt; — Q1–Q4 progress logging with 4 UoM types 
(Numeric Min/Max, Timeline, Zero-is-best)&lt;/li&gt;
&lt;li&gt;🚨 &lt;strong&gt;Escalation Monitor&lt;/strong&gt; — Rule-based detection of overdue submissions, 
missing approvals, and pending manager reviews&lt;/li&gt;
&lt;li&gt;📈 &lt;strong&gt;Analytics &amp;amp; Reports&lt;/strong&gt; — QoQ trend charts, department-wise performance, 
thrust area distribution, CSV exports&lt;/li&gt;
&lt;li&gt;🔒 &lt;strong&gt;Admin Governance&lt;/strong&gt; — Cycle phase management, shared goal distribution, 
full audit logging&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Tech Stack:&lt;/strong&gt; React 18 + Vite · Context API · localStorage (zero-backend &lt;br&gt;
demo) · Recharts · Lucide Icons · Custom dark glassmorphism CSS&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;🔗 &lt;strong&gt;Live App:&lt;/strong&gt; &lt;a href="https://atomberg-goal-tracker.vercel.app/" rel="noopener noreferrer"&gt;https://atomberg-goal-tracker.vercel.app/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📁 &lt;strong&gt;GitHub Repo:&lt;/strong&gt; &lt;a href="https://github.com/anonomous29/atomberg-goal-tracker" rel="noopener noreferrer"&gt;https://github.com/anonomous29/atomberg-goal-tracker&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Quick Login Credentials
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Role&lt;/th&gt;
&lt;th&gt;Email&lt;/th&gt;
&lt;th&gt;Password&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Admin&lt;/td&gt;
&lt;td&gt;&lt;a href="mailto:priya.sharma@atomberg.com"&gt;priya.sharma@atomberg.com&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;admin123&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Manager&lt;/td&gt;
&lt;td&gt;&lt;a href="mailto:rajesh.kumar@atomberg.com"&gt;rajesh.kumar@atomberg.com&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;manager123&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Employee&lt;/td&gt;
&lt;td&gt;&lt;a href="mailto:vikram.singh@atomberg.com"&gt;vikram.singh@atomberg.com&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;emp123&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  What to try:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Login as Admin&lt;/strong&gt; → Go to Escalation Monitor → see rule-based alerts&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Go to Reports&lt;/strong&gt; → QoQ Trends tab → see Q1 performance bar chart&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Login as Employee&lt;/strong&gt; → Dashboard shows Q1 score donut + goal-level progress&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Login as Manager&lt;/strong&gt; → See team check-in status and review Q1 feedback&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  The Comeback Story
&lt;/h2&gt;

&lt;p&gt;This project started as a &lt;strong&gt;hackathon requirement&lt;/strong&gt; — a Business Requirements &lt;br&gt;
Document (BRD) from Atomberg asking for a digital goal management system. The &lt;br&gt;
initial version had the core structure but was essentially an empty shell: &lt;br&gt;
blank dashboards on login, no check-in data, no analytics, and missing two &lt;br&gt;
bonus modules entirely.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What I finished up:&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Before
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;❌ Empty dashboards on every login (no seed data)&lt;/li&gt;
&lt;li&gt;❌ No Escalation Monitor (BRD §5.3 bonus feature)&lt;/li&gt;
&lt;li&gt;❌ Basic analytics — just one bar chart&lt;/li&gt;
&lt;li&gt;❌ No QoQ trend analysis&lt;/li&gt;
&lt;li&gt;❌ Manager dashboard didn't show check-in status&lt;/li&gt;
&lt;li&gt;❌ No per-goal score breakdown in reports&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  After
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;✅ &lt;strong&gt;Rich pre-seeded demo data&lt;/strong&gt; — 16 approved goals, 4 Q1 check-ins with 
manager comments, 13 audit entries, 8 notifications loaded on first open&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Escalation Monitor&lt;/strong&gt; — 5 rule types (Critical/High/Medium/Low), 
collapsible employee cards, department filter, CSV export&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;QoQ Analytics&lt;/strong&gt; — 4-tab reports page with goal-level achievement table, 
quarter-on-quarter grouped bar chart, department comparison, and pie distribution&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Score donut charts&lt;/strong&gt; on employee dashboard&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Team check-in tracking&lt;/strong&gt; on manager dashboard (submitted vs. reviewed)&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Version-aware localStorage&lt;/strong&gt; — auto-migrates returning users to new seed data&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The biggest unlock was the &lt;strong&gt;Escalation Monitor&lt;/strong&gt; — it transformed the portal &lt;br&gt;
from a passive data entry tool into an active compliance tracker that tells &lt;br&gt;
managers exactly who is falling behind and why.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Experience with GitHub Copilot
&lt;/h2&gt;

&lt;p&gt;GitHub Copilot was integral to finishing this project quickly. Here's &lt;br&gt;
specifically how it helped:&lt;br&gt;
&lt;strong&gt;1. Boilerplate elimination&lt;/strong&gt;&lt;br&gt;
The score computation engine, localStorage CRUD helpers, and recharts &lt;br&gt;
configurations were tedious to write from scratch. Copilot autocompleted &lt;br&gt;
entire function bodies after seeing the first few lines of pattern.&lt;br&gt;
&lt;strong&gt;2. Business logic translation&lt;/strong&gt;&lt;br&gt;
The BRD had complex UoM scoring rules (Numeric Min, Numeric Max, Timeline, &lt;br&gt;
Zero). Copilot helped translate the prose spec directly into the &lt;code&gt;computeScore&lt;/code&gt; &lt;br&gt;
switch statement — getting the inverted formula for "lower is better" metrics &lt;br&gt;
correct on the first try.&lt;br&gt;
&lt;strong&gt;3. React pattern consistency&lt;/strong&gt;&lt;br&gt;
Across 10+ components, Copilot kept prop patterns, className conventions, and &lt;br&gt;
inline style objects consistent — no more copy-paste drift between components.&lt;br&gt;
&lt;strong&gt;4. Escalation rule engine&lt;/strong&gt;&lt;br&gt;
The most valuable assist: when I described the escalation rules in a comment &lt;br&gt;
block, Copilot generated the full predicate functions for each rule type, &lt;br&gt;
including edge cases like "employee has goals but hasn't submitted them."&lt;br&gt;
&lt;strong&gt;5. Seed data generation&lt;/strong&gt;&lt;br&gt;
Writing 16 realistic performance goals with correct weightages summing to 100%, &lt;br&gt;
meaningful descriptions, and plausible Q1 achievement numbers would have taken &lt;br&gt;
an hour manually. Copilot drafted the full &lt;code&gt;INITIAL_GOALS&lt;/code&gt; and &lt;br&gt;
&lt;code&gt;INITIAL_CHECKINS&lt;/code&gt; arrays in minutes.&lt;br&gt;
Overall, Copilot cut the "finishing up" time from an estimated 2 days to a &lt;br&gt;
single focused session — letting me ship the escalation module, analytics &lt;br&gt;
overhaul, and rich demo data all in one go.&lt;/p&gt;

&lt;p&gt;Atomberg Goal Tracker — Demo Screenshots&lt;/p&gt;

&lt;p&gt;Screen 1: Admin Dashboard&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsa7n687edmflwa8s0a5v.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsa7n687edmflwa8s0a5v.jpg" alt=" " width="800" height="800"&gt;&lt;/a&gt;&lt;br&gt;
Admin Dashboard&lt;br&gt;
Organization-wide overview — team stats, department progress, quick actions&lt;/p&gt;

&lt;p&gt;Screen 2: Escalation Monitor (Bonus Feature)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1whwz67x9zzsdsaxczt0.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1whwz67x9zzsdsaxczt0.jpg" alt=" " width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Escalation Monitor&lt;br&gt;
Rule-based compliance tracker — Critical / High / Medium / Low severity alerts&lt;/p&gt;

&lt;p&gt;Screen 3: QoQ Analytics — Reports &amp;amp; Analytics&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feupsjx81r4gbzkex2ldn.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feupsjx81r4gbzkex2ldn.jpg" alt=" " width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;QoQ Trends&lt;br&gt;
Quarter-on-Quarter performance trends — all employees compared across Q1–Q4&lt;/p&gt;

&lt;p&gt;Screen 4: Employee Dashboard&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx3sb6y9twdq7ri68sgb3.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx3sb6y9twdq7ri68sgb3.jpg" alt=" " width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Employee Dashboard&lt;br&gt;
Personal dashboard with Q1 score donut, approved goals, and cycle timeline&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Boilerplate elimination&lt;/strong&gt;&lt;br&gt;
The score computation engine, localStorage CRUD helpers, and recharts &lt;br&gt;
configurations were tedious to write from scratch. Copilot autocompleted &lt;br&gt;
entire function bodies after seeing the first few lines of pattern.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Business logic translation&lt;/strong&gt;&lt;br&gt;
The BRD had complex UoM scoring rules (Numeric Min, Numeric Max, Timeline, &lt;br&gt;
Zero). Copilot helped translate the prose spec directly into the &lt;code&gt;computeScore&lt;/code&gt; &lt;br&gt;
switch statement — getting the inverted formula for "lower is better" metrics &lt;br&gt;
correct on the first try.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. React pattern consistency&lt;/strong&gt;&lt;br&gt;
Across 10+ components, Copilot kept prop patterns, className conventions, and &lt;br&gt;
inline style objects consistent — no more copy-paste drift between components.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Escalation rule engine&lt;/strong&gt;&lt;br&gt;
The most valuable assist: when I described the escalation rules in a comment &lt;br&gt;
block, Copilot generated the full predicate functions for each rule type, &lt;br&gt;
including edge cases like "employee has goals but hasn't submitted them."&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. Seed data generation&lt;/strong&gt;&lt;br&gt;
Writing 16 realistic performance goals with correct weightages summing to 100%, &lt;br&gt;
meaningful descriptions, and plausible Q1 achievement numbers would have taken &lt;br&gt;
an hour manually. Copilot drafted the full &lt;code&gt;INITIAL_GOALS&lt;/code&gt; and &lt;br&gt;
&lt;code&gt;INITIAL_CHECKINS&lt;/code&gt; arrays in minutes.&lt;/p&gt;

&lt;p&gt;Overall, Copilot cut the "finishing up" time from an estimated 2 days to a &lt;br&gt;
single focused session — letting me ship the escalation module, analytics &lt;br&gt;
overhaul, and rich demo data all in one go.g! --&amp;gt;&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>githubchallenge</category>
    </item>
  </channel>
</rss>
