## Three Years Goes Fast When You're Shipping Code

I started as a Software Developer Trainee at CoderSoftech in February 2023. Today I'm building government portals for DDA and nature tourism platforms for the UP Forest Department at Preview Technologies. Here's everything I'd tell my day-one self.

## Technical Lessons

### 1. SQL Is Not Optional

Most .NET developers I've met treat SQL as a necessary evil — something you write when ORMs fail you. I used to be the same.

Then I started writing complex stored procedures for government projects with audit trails, complex joins, and performance requirements. SQL became a first-class skill, not a backup.

**The shift:** Stop thinking of SQL as "the database thing." Think of it as the most powerful data manipulation language you have access to.

### 2. Understand HTTP Before You Learn Frameworks

I spent months learning ASP.NET MVC before I properly understood what HTTP actually does. Request-response cycle, headers, status codes, cookies — these aren't framework concepts. They're the foundation everything runs on.

If I'd understood HTTP deeply first, every web framework would have made sense immediately.

### 3. Read the Error Message — The Whole Thing

Early Nilesh: *error appears, immediately Google the first three words*

The error message usually tells you exactly what's wrong. Line number, file, reason. I wasted weeks Googling problems that the stack trace had already solved for me.

### 4. Version Control Is Not Just "git commit -m update"

I used Git as a save button for the first year. No branching strategy, no meaningful commit messages, no code review discipline.

Good commit messages are documentation. Branch per feature is discipline. PRs are conversation. I learned this the hard way when I needed to roll back a change and had no idea which commit had introduced it.

## Career Lessons

### 5. Working on Government Projects Changes Your Engineering Standards

Commercial projects tolerate some sloppiness. Government projects do not. Security is audited. Data integrity is non-negotiable. Documentation is required.

Spending time on government projects at Preview Technologies raised my baseline permanently. I now apply the same rigor to everything I build.

### 6. The Best Learning Happens at the Edge of Your Comfort Zone

The Van Darshan portal for UP Forest Department — accommodation booking, safari slots, boat rides, payment integration — none of that was in my comfort zone when I started. It is now.

Every significant project pushed me into unfamiliar territory. That discomfort was the learning.

### 7. Soft Skills Matter More Than Comfortable

The ability to explain a technical decision to a non-technical stakeholder, to push back on a requirement that will create problems later, to write documentation that someone else can actually follow — these skills separate good developers from great ones.

I underestimated this completely at the start.

## The Mistakes That Cost Me the Most Time

- **Not writing any tests early on** — technical debt is real and it compounds
- **Over-engineering simple features** — not everything needs a factory pattern
- **Not asking for help sooner** — pride is expensive when measured in hours
- **Skipping documentation** — future me always paid for past me's laziness

## What's Next

Three years in, I'm more excited about software development than I was on day one. The problems get harder, the solutions get more interesting, and the craft keeps deepening.

If you're at the start of your journey — stay curious, build things, break things, and document what you learn. The only real path is through.