Nirjan's site logo

I'm Nirjan, a self-taught Full-Stack Product Developer.

Nirjan Khadka's profile picture

I'm based in Kathmandu, Nepal and I love solving problems and learning new things. You can find me usually spending my day learning something new about coding or trying to use code to solve my problems. Besides coding, I'm also a huge cinephile and I love reading books or listening to music (mostly hiphop). I'm deeply curious about history, mythology and storytelling. I enjoy playing football/futsal whenever I can and I'm a loyal Manchester United Fan.

What I aim for in any software I build

  • Good User experience

    • Intuitive interface
    • Accessible
    • Bloat free
    • Cohesive brand
    • Simple and Clear
  • Good performance

    • Fast loading times
    • Fast time to first interaction
    • Fast feedback cycle
    • Fast for majority of users
  • Secure

    • Free from common vulnerabilities
    • Follow best practices
    • User comes before developer experience
    • Proper backups and plans for outages
    • Limited downtime - try to aim for 99.99% SLAs
    • Prevent issues from depenencies

My sofware development values

  • Main priorities: UX, Performance and Security
  • Outcome over tools and techniques
  • Focuses on patterns over technology
  • Long-term proven technologies instead of short-term trends
  • Avoid shitting on other tech and people and try to spread positivity and excitement
  • Give people the benefit of doubt
  • Learn in public
  • Build in public
  • Proponent of Self hosting and owning your data
  • Linux enthusiast
  • Ship quick and then iterate

Core patterns I try to follow

  • Good UX
    • Good understanding of UI/UX
    • Accessibility
    • Understanding Product management, branding and marketing
    • Testing for end-user happiness
  • Good Performance
    • Benchmarking and profiling
    • Good understanding of devtools
    • Good understanding of fundamentals of the platform
    • Performance oriented CI/CD practices
    • RUM metrics collection
    • Database query optimizations
    • Observability and tracing
    • Avoid Hasty Abstractions
  • Security
    • Implement the best security practices for the platform
    • Good backup solutions
    • Understand laws and regulations for user privacy
    • Good data storage practices
    • Proper monitoring and alerting
    • Proper dependency auditing
    • Own the data as much as possible instead of giving it to third parties

Fundamental technologies I'm interested in

  • Linux
  • Docker
  • GIT
  • SQL
  • Assembly*
  • Web Protocols: HTTP, HTTPs, TLS, UDP, Web sockets
  • Accessibility
  • UI/UX design
  • Relational database modeling
  • Observability
  • Debuggers
  • Profillers
  • Web Platform
  • Marketing and Branding
  • Observability and Monitoring
  • Infrastructure as Code
  • Automation
  • Testing