Top reasons why we develop web applications with Symfony

In company Outsourcify we work on projects of various sizes: from small websites consisting of several pages to complex business applications. Depending on the specific case, we recommend different technical solutions to our clients (for example, we write many single page applications in JavaScript and work with WordPress), but in the most difficult scenarios, when developing large web applications that take a team of developers for several weeks or months, we we give preference to the framework Symfony

The story of my acquaintance with Symfony

To be honest, I chose Symfony primarily for personal reasons. Being French, I got to know the first version of Symfony more than 10 years ago and have been using this framework continuously since then, developing along with it. Symfony was originally developed by French Fabien Potencier and then backed by his web development agency, SensioLabs. I don’t even remember exactly how I found out about the existence of this framework, but it was probably due to the fact that I regularly visited French-language websites. Having documentation and tutorials in French helped too.

During those years (2002-2003) I worked as an IT consultant and developer in Paris, collaborating with large corporations (EDF, GDF, Alstom). The Java language was the standard for developing large business applications back then. I have worked on maintaining and code development for existing applications built mainly with Spring, Struts and Hibernate.

In my spare time, I have occasionally developed personal websites in PHP (like the online magazine Eklektik Rock, which I redid several times). Even then, this language seemed to me more convenient when developing in a simple local environment. I tried different frameworks available at that time. The first one I mastered was Mojavi, I was even able to use it in one small project for a client.

When I decided to quit my job in Paris and move to Thailand, I already discovered the first version of Symfony, which was released in 2005. Moving from the Java libraries I used at work to an MVC-like framework like Symfony was pretty easy. Modern PHP frameworks are very similar to Spring MVC, and Propel (an ORM library offered at the time with Symfony; since then replaced by Doctrine) bore similarities to Hibernate.

When I became a freelancer, it became obvious to me that I would not continue to program in Java: not that it was impossible, but the ease of use of Symfony, the ability to install it on inexpensive PHP servers, and the fact that Symfony was open source code were clear arguments in its favor. I no longer worked in a team – I worked remotely for remote clients. And I think I made the right choice by choosing Symfony – not only in the projects I was working on at that time (I started with a hotel booking application), but also in the long term, since Symfony has evolved significantly since then and today, in my opinion, is one of the best PHP frameworks. I do not exclude that now they are developing on it in some of those large French companies where I worked 10 years ago.

Why choose Symfony from the many popular PHP frameworks?

It would be presumptuous to say that I have tried absolutely every other PHP framework, but I have actually tried many of them at different times: Zend, CakePHP, CodeIgniter, and most recently Laravel (Symfony’s main competitor). This is purely personal preference, but I’ve always come back to Symfony. Even Laravel, which essentially incorporated most of the concepts of Symfony and even borrowed several components from it (they were directly copied from Symfony), did not seem to me as clear and, most importantly, reliable as Symfony. Today, as I run my own web development agency made up of several PHP development teams, this aspect is more important than ever.

Symfony has all the features you would expect from a web framework – great documentation, an ecosystem of full-featured plugins (over 1000 packages), and everything to accelerate the creation of professional web applications that are easy to maintain. In essence, it is a set of completely free open source components, and its libraries offer standard tools that can be used in many different projects, avoiding the repeated solution of common tasks. It follows the Model-View-Controller (MVC) design pattern, which allows for separation of concerns and makes everyone’s work easier to understand when working as a team. This framework appeared in 2005 as an open source project and was the first framework to support PHP 5.3. Since then, the framework has evolved and now supports PHP version 8, has a huge community of users and contributors around the world and today is the most popular PHP framework in many countries (including, of course, France, but not Thailand, where PHP developers prefer Laravel ).

At our company, we have used Symfony to develop various applications in industries such as social media, content management, online billing, marketplaces, inventory management, services for comparing insurance plans, etc.

Top reasons for choosing Symfony

Flexible architecture… Symfony is a well-organized framework that is easy to learn and use. Its architecture allows developers to create easily maintainable web applications in the simplest way possible. Symfony includes everything expected of a modern framework and has a clear structure that makes it easy to navigate both in your own code and in the code of other developers. The framework relies on reusable components and involves following a lot of proven techniques. It also has excellent performance (although not always perfect).

Innovations… Symfony’s authors and community have a curiosity that goes far beyond the PHP world. The creators of the framework have contributed to the development of PHP in general, with some Symfony components now being used in other frameworks, CMSs, and well-known libraries. Many of the framework’s concepts are borrowed from Java (for example, dependency injection), but Symfony has helped to adapt them to the PHP environment. The Debug Toolbar and Profiler Bar are examples of tools that help programmers develop productively, and it’s hard to imagine writing PHP code without them.

Compatibility… Symfony allows you to create applications that meet the needs of any business, as long as those applications need to run on a web platform. This framework takes into account the existing PHP standards: PHPUnit, class naming conventions, etc. In addition, Symfony allows you to use some of its components without using the entire framework, for example, the internationalization management system, the dependency injection system, the routing system, the system form control and many other components. Also, the authors of the framework took advantage of external libraries such as Doctrine and Swiftmailer, instead of reinventing what already works well in other projects.

Ecosystem… Since the framework is written in PHP, there are a huge number of useful third-party plugins for it, called packages in Symfony (or bundles). You can almost always find a package that will help you solve a particular problem. The Symfony framework is also gaining popularity and recognition due to the fact that it is easy to install on any server running Linux (and even Windows) and achieve stable performance. It supports any database including MySQL, PostgreSQL, SQLite, and MongoDB. It even supports automatic form validation and user input to avoid SQL injection and XSS attacks.

Reputation… Since its launch in 2005, Symfony has been rapidly adopted by PHP developers around the world. Today it offers a stable environment that is popular and recognized internationally. The number of links to the project has increased significantly since its launch; you can even say that Symfony contributed to the “democratization” of PHP and its distribution in large companies, although in the professional environment this language has not so long been associated with low reliability (and is still associated, as some will say, but I disagree) … Symfony is also an active community of developers and contributors who are constantly improving the framework and related tools.

The cost… As a fully open source software, Symfony automatically assumes a low cost of ownership. Symfony allows you to develop reliable applications for any type of business according to the needs of the customer, giving developers all the options to manage the configuration and customize these applications. The framework contains a set of tools to help programmers test and debug applications, as well as document the development process in accordance with corporate standards. The only implied costs are developer labor and hosting.


The translation was prepared on the eve of the start of the course “Symfony Framework”.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *