I am delighted to have Magdalena Banasiak for an interesting interview with Cloudways. Magdalena is currently working as a Project Manager and Documentation Lead at Sylius. She is pretty diversified when it comes to skills in software development and software project management. In addition, her understanding of software documentation is exceptional, and she maintains Sylius official documentation all by herself. This interview offers her views about her career and how the Sylius, an emerging ecommerce Platform is taking on Magento and WooCommerce.
Let’s start the Interview 🙂
Cloudways: Hello Magdalena! How are you? Thank you for taking out some of your precious time for this interview! Could you please share some highlights of your career as a developer? What motivated you to choose this field as your profession?
Magdalena: Hi! Cześć! I am really, really fine. Right now it is probably the most exciting part of the year for me. Got back to work from holiday a few weeks ago with a new load of creativity. And just after my vacation I’ve spent time with my colleagues on releasing the first stable version of Sylius eCommerce framework.
My path to start working in IT was kinda weird and complicated. Before I have started my studies, I have never thought I could be doing IT. As a kid and teenager I’ve dreamt of being a doctor or an English teacher.
My professional career in IT has started only 2.5 year ago with an internship in one of the major IT companies here in Łódź. I went for just one interview, I liked the company, which offered something suitable for my experience. During this internship, we were writing code for a quite complex web application for employees’ skills management. I found it really entertaining and challenging as my role was both writing code (mainly databases) and being a Scrum Master of the team.
Then, I was looking for another job and that’s how I found Sylius (which was actually located at a software house Lakion at that time – the Sylius company I’m a part of now, was created later for more efficient support of our project and future products development). I’ve applied for an internship, on which we were being completely educated in all the amazing technologies that Sylius is using: Symfony PHP, TDD and BDD, plus a lot of clean code. I can say for sure that people at Sylius are the ones who really taught me to code properly.
While working at Sylius I’ve realised that there are areas of IT in which I could do a whole lot more than as a typical Symfony programmer. At first I’ve decided to … write the Sylius documentation. I am aware that many of you now have a big “Whaaat” on their minds, but yes, it was my decision to take care of the docs 😀 I am really fond of writing, both technical and fictional, plus I totally love solving problems, that is why it is a perfect place for me. Then I’ve asked my supervisors if I could challenge myself and besides writing the docs, try project management, as I’ve always felt better at working with people, than working with machines 😀 And here I am as a Documentation Lead Developer and Project Manager at Sylius.
Cloudways: In your opinion, what makes Sylius different from other ecommerce platforms such as WooCommerce and Magento?
Magdalena: I am probably not the most reliable person when it comes to comparing Sylius to other systems, as I have never worked with anything else than Sylius before. On the other hand I’ve now spent more than half a year on Sylius Slack, which is the main support channel, and I have met dozens of developers who have migrated to Sylius from other platforms. To me, as a Project manager, the whole Sylius community is like a giant team. In their daily messages, I can clearly see why they have chosen to work with Sylius.
The main reason I would point out is that Sylius has an extremely low entry threshold for Symfony programmers. You can easily take a guy who has worked with Symfony before, give him a project on Sylius and he will become productive from day one. Since Sylius is based on Symfony, it follows all its rules, including coding standards, greatly improving adaptability.
Another important asset when comparing Sylius to systems like WooCommerce and Magento is its low feature set. Why do I consider it as an asset? Because in our opinion, having a lot of features does not make a good platform. It just makes it overweight, as not everyone has the same needs for features. Sylius is a framework – this means it is just a base for various plugins, that extend its functionalities. Sylius Core is a fully functional shop, but with basic functionalities only. Thanks to that it is not so heavy and lightning fast. Last but not least, it is pretty well documented!
Cloudways: What is your opinion about the rapid releases of framework updates? Do you think this hurts the adoption rates and framework footprint in the market?
Magdalena: It strongly depends on how good the project’s BC policy is. If your project’s architecture allows for introducing new features without breaking changes, you can of course iterate faster. Tip 1: SOLID principles help here a lot. Tip 2: Rich testing culture also improves upgradability. I simply cannot imagine Sylius stable release without having the test suite, it wouldn’t have been that easy for sure. What is more, Sylius having the test driven development built-in our workflows makes custom projects much better tested and thus upgrades are smoother than in any legacy platform.
Cloudways: Recently Sylius Team has released the latest version of the ecommerce platform. What new updates and features are added to this release. Briefly tell us about the journey of accomplishment 🙂
Magdalena: The latest version of Sylius is the most important version of all – it’s the first stable one! It took Sylius 6 years to grow up and become a stable project. The whole team and especially Paweł have given a tremendous amount of work into that.
Long story short: Paweł Jędrzejewski founded Sylius as a small online shop for his family business. The business had to be shut down, although Paweł was left with the name & a full shop engine implemented from scratch in PHP. He decided to make that bunch of Symfony bundles an Open Source project. The codebase continued to grow, and at the beginning of 2012, Paweł started to build a business around it. In 2014 most of the people you know from our Core Team joined the company based on Sylius, and we kept working toward making Sylius stable.
And here we are! 1.0.0 is released. Sylius is a complete base for eCommerce functionalities. Moreover, it has powerful REST APIs, fantastic performance, a lot of optimization possibilities, and is very easy to extend. It supports excellent developer productivity thanks to well-known tools (Composer, Symfony, Doctrine, Twig) and strong Testing Culture with built-in Agile workflows.
Cloudways: Calling upon your experience as a project manager, do you think there is a single “universal” project development strategy that could cater to projects of all complexities? How would you best manage the Sylius team there?
Magdalena: Of course, there is no such strategy. Even though I worked as a project manager not so long, I already know that each project is different, each customer is different, developers are different, and even the circumstances of my own life can be different. All these things affect projects in various ways and make them slightly unpredictable. On the other hand while working on projects of Sylius integrations, I must have a process for it. This is what I am currently working on – a general “framework” for managing projects on Sylius.
If you ask me about managing the Sylius product team, it gets even harder to describe because the Sylius team members are not only the folks we have in our office in Łódź but also the whole community, which is all around the world. Sylius community has different working hours, multiple cultures, language issues, and different levels of expertise. That truly needs an agile approach to get as much as possible from all these amazing people together 🙂
Cloudways: Mentors play a vital role in career development. Who were your PHP heroes? Who would you recommend PHP newbies follow within the PHP community?
Magdalena: In the PHP world, I have to mention Fabien Potencier, the creator of Symfony. What is more, and that might seem silly to some of you, but I owe a lot of my knowledge and experience to my colleagues from work, and especially my boss, Paweł Jędrzejewski, who is the creator of Sylius. Besides PHP heroes I also really admire Robert C. Martin aka Uncle Bob for two significant things for me: Clean Code and Agile Manifesto (with 16 other men responsible too, of course!).
Cloudways: I have noticed that you do enjoy speaking at conferences and IT events. Which topics / issues are the closest to your heart? In your opinion how do these networking opportunities and conferences help developers in understanding the broad software industry?
Magdalena: Conferences are indeed a great place to meet people. It is amazing to meet guys you know from Slack or Github in real life and have a chat along with a beer. 😀 In such a laid back atmosphere it becomes very natural to talk about recent projects, solved and unsolved problems, and exchange ideas as most people there do similar things on a daily basis, albeit in different environments and we feel a need to chat about it!
So far I’ve spoken mainly about my journey in the IT world. There is a strong need for the women in IT to be heard, and there are plenty of opportunities to give speeches about it. I am also planning to do some presentations on Sylius in general because I think there are still a lot of developers who have not heard about it.
Cloudways: Successful open source projects offer well maintained and comprehensive documentation. How do you design your workflow to implement this practice for Sylius documents? Do you employ any automated tools for the development functions?
Magdalena: Sylius Documentation is a separate project from Sylius. There’s a lot of work to maintain it, but fortunately, the community is helping a lot. Whether it is detecting deprecated sections, reporting missing documentation, fixing typos, or reviewing PRs to the docs, the community is there. So my workflow as the Documentation Lead is to keep pushing the community to provide me with all these things. I wrote a lot of the documentation on my own before the guys in the community began to help me out as well.
The documentation development is not automated, although we’ve got a test suite for docs on Travis. So we are sure everything works good (especially links to other sites, and documents structure as they are prepared using Sphinx).
Cloudways: Here comes my favourite question! How do you spend your free time inside and outside of the office? you can share some pictures of your office etc. with us 🙂
Magdalena: Sure! In the office, we’ve got a chill room of course, but my favorite place is our huge balcony where we spend our breaks together, guys are playing chess, and from time to time we have a beer or two together 😀
You can check our Sylius instagram profile and see more of our office life here
Cloudways: Pictures of senior developers’ workstations have a knack of greatly inspiring budding developers. I would appreciate if you could please share some snapshots of your workstation.
Magdalena: My workstation is really simple. Having more stuff on my desk would distract me a lot, while PMs job is already quite prone to frequent distractions 🙂 A mug of coffee is a must-have. There are some girly attributes, like fluffy toys, a potted flower, but also my favorite rainbow elePHPant and a red Ferrari (which I dream to own someday).
Cloudways: What do you think about managed hosting solutions like Cloudways that provide a features-packed and highly optimized PHP stack with Laravel and other applications? Do you think managed cloud hosting solutions really do help developers kickstart web projects without worrying about server management issues?
Magdalena: Managed hosting solutions are a fantastic opportunity for developers. At Sylius we did not use Cloudways yet, although we have tried other similar solutions. Optimization of these services makes Sylius apps run even faster and the process of configuration and deployment is smoother as well. Cloud hosting is also very convenient for Agile projects since we can configure hosting from sprint number one, and deploy new versions after each iteration.
After looking at Cloudways docs, it looks effortless to use. Especially with your blog post on deploying Sylius.
– Thank you very, very much Cloudways for that one! I must admit that Sylius has to catch up and include a Cloudways deployment cookbook! 🙂
Cloudways: Let’s wrap this interview with a quick Rapid Fire round 🙂 Answer each of the following question based on the first thought you get!
- Symfony or Laravel?
–It’s really a holy war 😀 Symfony!
- IDE or text editor?
–IDE, for convenience.
- Coffee or beverage?
–I’m a coffee addict, so a cup of coffee please.
- Friends or Pets?
–Both. Greetings to my red cat Simba, my fiancé and my dearest friends in this place 🙂
- Linux or Windows or Mac?
- Sylius or Woocommerce?
–Oh well, you know the answer for sure. Sylius!