Three Years of Learning: Where I Am Now

Three years ago, I started learning programming. Today, I’m reflecting on this journey and looking ahead.

The Journey So Far

Year 1: Learned fundamentals JavaScript, HTML, CSS, basic full-stack development.

Year 2: Deepened knowledge React, Node.js, databases, TypeScript, testing.

Year 3: Advanced concepts system design, performance, advanced patterns, professional tools.

Technical Skills Now

I’m comfortable with:

  • Frontend: React, Next.js, TypeScript, Tailwind
  • Backend: Node.js, Express, REST APIs, WebSockets
  • Databases: MongoDB, PostgreSQL, database design
  • Tools: Git, Docker, testing, deployment
  • Concepts: Async programming, state management, authentication, API design

What’s Changed

Confidence: I can build complete applications independently.

Learning speed: I pick up new technologies much faster now.

Problem-solving: I approach problems systematically.

Code quality: I write cleaner, more maintainable code.

What Hasn’t Changed

Always learning: There’s always more to learn.

Imposter syndrome: Still happens, but I manage it better.

Debugging: Still challenging, but I’m better at it.

Biggest Accomplishments

  • Built dozens of projects
  • Learned multiple technologies deeply
  • Developed strong fundamentals
  • Maintained consistency for three years
  • Completed my degree (graduating soon!)

Current Focus

I’m working on:

  • Preparing for job applications
  • Building portfolio projects
  • Contributing to open source
  • Deepening system design knowledge
  • Practicing interview questions

What I’m Realizing

Senior-level knowledge, junior-level experience: I understand advanced concepts but lack professional team experience.

That’s okay: I’m seeking junior positions to learn from experienced engineers.

The journey continues: Three years in, I’m still growing.

Looking Ahead

Short term (next 6 months):

  • Graduate and receive my degree
  • Apply for junior positions
  • Keep building and learning
  • Start contributing to open source

Long term:

  • Work in a professional team
  • Learn from senior engineers
  • Build production systems
  • Grow into a mid-level engineer

Advice to Beginners

Be consistent: Daily practice beats occasional marathons.

Build projects: Theory is important, but building teaches more.

Learn fundamentals deeply: Frameworks change, fundamentals last.

Don’t compare: Everyone’s journey is different.

Keep going: Three years goes faster than you think.

Gratitude

Thank you to:

  • The creators who make free content
  • The communities that answer questions
  • Everyone who has helped me learn

Final Thoughts

Three years ago, I couldn’t write a line of code. Today, I can build full-stack applications.

I’m not done learning I’m just getting started.

The journey continues, and I’m excited for what’s next.