I offer in-person and online training for software engineers especially junior developers.

About a decade ago, I started my first job as a Software Engineer. I was lucky to have great senior developers who acted as my mentors. But unfortunately not all my jobs had great mentors. It was hard to be productive at those jobs initially.

Since then, as a lead and senior developer, I have helped and couched many junior developers. One thing I have learned is that everyone has a different learning style. And everyone can be a great developer with proper guidance and mentorship.

Universities and schools don’t prepare students for real professional work. In school, you learn to work on well-defined problems with definite solutions. When you start your first professional job as a programmer, you will find out that real world problems are vague and possibly there is no real solution.

Starting a new job is already pretty intense experience. Unfortunately, not many companies provide any training for new developers. And if they do, it is usually rushed through. You may have other team members to help you out but sometimes it is hard to get help when everyone has their own deadlines.

I have over 12 years of experience working in small and big companies. I help new developers with various popular technologies currently in use at major companies. These technologies include:

  • PHP, Javascript, Typescript
  • Laravel, Composer, PHPUnit tests
  • Git, Github, Stash, Gitlab etc
  • Reactjs, Vuejs
  • Nodejs
  • Linux, shell commands, ssh, etc
  • Development processes, Scrum
  • DevOps, Continuous Integration processes (Jenkins)
  • Docker, Kubernettes
  • How to find technical solutions
  • General programming principles like naming, design considerations, Linting, clean code, etc
  • High Availability and Disaster Recovery
  • Messaging Services like RabbitMQ
  • Sql and NoSql databases
  • Cloud Concepts, AWS
  • and more

Please email me at for more information or availability.