Skip to main content

Blog Posts

I write about software engineering technical articles around programming, best practises and trending tech stacks. Subscribe to my newsletter to make sure you don't miss anything.

Last week when I was in Kathmandu, Nepal I did a talk at Prime College, the college where I did my bachelor (undergraduate) and my Plus 2. The talk was about "Things I wished I knew while doing my bachelor / undergraduate".


This talk was about how to use your bachelor to craft your tech career. I started with what I have done and some examples of where my friends have reached. Then I focused on things to consider for selecting and doing projects for technical subjects in bachelor study.
Exactly a week ago, I was in Kathmandu, Nepal my hometown where I attended the 12th edition of PHP Developers Meetup organized by PHP Developers Nepal at Leapfrog Technology, Hattiban, Lalitpur.


The talk on Message Queue (Rabbit MQ and Symfony 2)

Not only did I attend the event I also presented a talk on "Message Queues - A basic overview" where I talk about how we are using Rabbit Mq at Namshi. There was no code examples, it was a plain experience sharing of how we use Rabbit Mq with Symfony 2 with the RabbitMq Budle. There was a good overview of how and where we use Rabbit Mq for scalability and reliability.
What is common between Google, Facebook, Microsoft, Twitter and Linked in? If you are looking for the answer its Git the Distributed Version Control System (DVCS) that has simplified software revision control. Its major features are speed and performance combined with ease of use provided you know the basic git concepts.

If you are new to git you should read some getting started tutorials or if you have used SVN you should read migrating to git. For the audience of this post, I assume that you are already using git for some time and are familiar with concepts like commit, push a branch, pull changes from remote repository, merging a branch to "master" and similar daily things that git users normally do.

Git is a lot more popular than SVN or Mercurial. If you take check Google trends in the past 5 years (July 2009 - July 2014) in Internet and Telecom category, git it twice or move as popular as the other two:

"I found out that you guys just build an amazing mobile app for your e-commerce venture, I heard you are using Symfony 2 for your back-end APIs. How did you make it that fast?" This is not very different that what I was asked some months back. The answer is we use a Service Oriented Architecture (SOA) where all back-end service follow the REST architecture to communicate with all the clients. The client can be built in any language as longs a they can do HTTP calls. Lets look at what Symfony 2 bundles you can use to build a similar scalable, fast and cacheable REST APIs.

I assume that you have some experience with Symfony 2 including how to use composer to download dependent libraries/bundles.

What is REST

REST, short form for Representational state transfer is a resource based client and server communication protocol which is stateless and cacheable. It is an abstraction over HTTP communication where emphasis is given on uniform interface to make the communication structured and consistent. This video describes the constraints of REST and explains what it is or read a simpler one.

More posts can be found in the archive.

Latest Posts

Side Projects

Read more on

Join the Newsletter

Receive exclusive content and links about software engineering and web development every month.

    We hate spam as much as you do. Unsubscribe at any time.