Fundamentals

Magento is (according to magento.com) the world’s #1 commerce platform and handles over $100 billion in gross merchandise volume every year. Magento offers really great flexibility, thanks to its modular architecture and is extremely scalable in various scenarios.

A lot of my clients ask me which platform to choose for their eCommerce businesses: WordPress + WooCommerce or Magento? The answer is always – it depends. It depends on the website’s purpose.
Although both of the platforms are content management systems, it is pretty clear that Magento was built particularly for eCommerce, while WordPress is more about publishing content and creating content based web projects.
We (me and clients) usually answer the following questions to make the right pick for their business needs:

1. Will there be over 100 products / SKUs?
2. Will there be a need to translate the site to multiple languages?
3. Will there be a need to skin the store differently and launch a few of them sharing the same products?
4. Is there extra time budget allocated for the development?

If most of the answers are “Yes” then we always go for Magento and clients never look back.

Nitty gritty

I have developed Magento stores from scratch as well as further-developed stores that were built by other agencies/developers. Most of the projects I work on are Magento 1.9, however, Magento 2.x is slowly taking over and at this moment makes up around 25% of my projects.
Since I have started developing for Magento I have realized that knowing the fundamentals – blocks, modules, controllers, resource models, observers, collections, shell scripts, layouts etc. – is absolutely essential and, thus, have decided to first go through the theoretical learning and only then switched to working on clients’ projects.
This proved very valuable and I am now a skilled Magento front and back-end developer, who is comfortable working with scripts, CLI and databases.