Milen Dyankov

on a mission to help developers build clean, modular, and future-proof software

The fruits of our labor

February 14, 2018 | 17 Minute Read

I usually do rather technical talks around software architecture and design. Unless one is а famous storyteller, IT conferences would rather take one more “What’s new in the latest version of XYZ technology” than risk a bet on something that may end up anywhere between boring and sales pitch. I don’t blame them but that is why it is not often that I’m given the opportunity to speak about culture, purpose and all those non-measurable, soft, human things. Therefore I’m extremely grateful Let’s Manage IT invited me and trusted me to give exactly this type of talk. Knowing that I’ll likely not have the opportunity to present it anywhere else, I decided to convert it into a blog post and publish it here.

The Orange World project

It was mid 2005. My wife and I were driving back home after work when we noticed this huge banner ad occupying the whole sidewall of a rather tall building. It was promoting a new online service called Orange World.

The Orange World website from 2005

The Orange World was a revolutionary approach to mobile entertainment. It was accessible from a mobile phone via WAP, it could recognize the device and offer to the user tons of device compatible ringtones, wallpapers, games, songs, news, … I’m not joking! Keep in mind back in 2005 iPhone and Android didn’t yet exists. Mobile phones were … well just phones with physical buttons and rather small screens! Mobile internet was just entering the market and WAP was a revolutionary idea. So Orange World was huge and everyone I knew was excited about it!

Burning money

I had an extra reason to be excited - I was part of the team building it! So I started passionately telling my wife about how I was so lucky to work on this project and how it will change the world. She patiently listened while I was explaining how great are the technologies we use (where are you today ATG and Volantis?), what challenges we face, how huge the amount of data we process is, … and the most important thing of course - how much money Orange is investing into it.

Burning money image

I guess I was no less excited than today’s startup folks burning VC dollars, so you can imagine my stupid face when she replied with “What a terrible waste of money! Imagine if they have invested that money into something that actually helps people instead”. OK, if your spouse is not in IT, do not mention IT projects - that’s one lesson I learned. Somewhere deep inside though, I knew she is right. Those millions could have been used in a much better way. Yet, it’s not my call. People and companies are free to decide what they spend their money on and at the time I was more than happy Orange made a choice to spend it in a way which allowed me to work on something cool and grow professionally.

Satisfying the greedy youngster

It was because of profitable projects like Orange World, that the company I was working for, was able to take good care of its employees. Good pay, private healthcare, free gym and poll access, bonuses, … Mentors to learn from, free tech books, wide spectrum of technologies used, … I was not only able to provide for my family but I also felt I was getting better every day. In another words, I was comfortably occupying the 3rd floor of Maslow’s Hierarchy and moving to the one above seemed to be within my reach.

One of my first public speaking experiences

Indeed, in the next few years I moved up in the hierarchy (both company’s one and Maslow’s one). I was managing a team of about 30 people working on variety of challenging projects. Several big, complex projects for banks, telecommunication and insurance companies, delivered on time and within budget is what it took to earn the trust of the C level executives. Mastering a bunch of Java frameworks was the key to win the respect of the younger colleagues. My professional self-esteem grew high. Together with it, grew this feeling that everything I’ve achieved was a result of my significant contributions to the “terrible waste of money” that large enterprises were so happily investing in!

The 10x craziness

Meanwhile the need for people that write code was increasing every day. As Silicon Valley was growing in size and importance, a new mysterious super-humans ware discovered. They’ve been called “10x programmers” (a.k.a “rockstar developers”). Many people write code. Not so many people write good quality code. Apparently only those “coding superstars” write good quality code fast (either 2 or 10 times faster depending on whether you read “10x” in binary or decimal). You know, good developers are hard enough to find. But those super-heroes are even 10x harder to find. No surprise talent agencies were established to hunt and sell them.

A slide from Stephanie Kim's talk “Becoming a 10x Data Scientist“

If you represent one of those companies glorifying 10x-ers, I strongly suggest you to take some time to think how you make your x-ers feel. I personally felt really bad about it. Not that I would ever show it, but no matter what I did, I had this feeling I’m not good enough and should be more productive. Being more productive is the ultimate goal of every software developer, isn’t it? And than, one day, this colleague of mine, who I thought was one of the few 10x people in the company, told me “you know, we are just get/set developers. All we do is grab data from one place, change it a bit and store it in some other place.”. It was both relieving and scary at the same time, to discover that I wasn’t the only one questioning the sense of our work. Oh and obviously I was wrong, he wasn’t 10x-er if he felt like I did, right?

Autonomy, Mastery, Purpose

It was roughly at that time when I discovered the famous The surprising truth about what motivates us talk. Just in case you haven’t seen it, the bottom line is that once people are paid enough to take the issue of money off the table, there are three factors that motivate them - autonomy, mastery and purpose.

An illustration of “Autonomy, Mastery, Purpose“ concept

I did have some autonomy! Actually for someone working for an about-to-become-a-corporation company, I probably had more autonomy then our competitors would offer to their employees. However the process or replacing autonomy with company rules, was already in place. While I was constantly getting better at programming and software architecture and learning more in general, I felt bad about how restricted I was in sharing that knowledge. It seamed that my only purpose was to help my company grow. But then what was the purpose of the company (other than making money, that is)?

Open Source

We were using tons of open source projects but contributing back, while not forbidden, was not really encouraged in any way. I had a few open source projects myself, but those were toys. In 2009 we started using Liferay Portal to speed up the development of content centric web applications. Of course it wasn’t my first contact with open source software. I was running Linux on my machine and products like JBoss, MySQL, Spring, Hibernate, … were well known to me. But this Liferay company - it was somehow different.

Picture of Liferay's office with “Open Source“ sign highlighted

All open source vendors seem to exist for a single reason - make the product popular and then monetize it. I watched JBoss and Hibernate going to RedHat, Spring going to VMware, MySQL to Sun and then Oracle, … Naturally, everyone was waiting for Liferay to get acquired any moment. These guys were weird though. “Hey, we’re not looking to get bought. We have no VC funding and we are proud of that.” was what they keep saying. For the next 3 years I got to know better the product, the company and people behind it. It all started to make sense. Liferay had, what my company was lacking - purpose. A purpose I could identify myself with - truly open source, enterprise ready software platform that empowers developers around the world and helps them be super productive. In 2012 I overcame my fear of not being 10x programmer and joined Liferay to help evolve this awesome product and keep it open source so developers all over the world can build awesome things.

Money

If you have ever changed jobs you know that feeling when your original idea of what the new company is all about meets the reality. No exceptions this time. Not so long after I joined the company there was this event at which Bryan Cheung, Liferay’s CEO, clearly stated “When we started Liferay, we wanted to build a company that would make a lot of money …“.

Image showing money

OK, I can almost hear you laughing and saying “I knew it”. And yea, my first though was “Of course! How can you be so naive?” I felt I was such a fool to believe they actually care about open source and developers and freedom and all that “ideological nonsense”. For a second I felt so disappointed I almost missed the second part of that sentence: “… to give a lot of money away.”. Trust me, I wasn’t less surprised than you are now. As weird as it sounds it explains why Liferay founders didn’t want any external funding and worked hard to grow the company organically.

People

So I was wrong. It wasn’t only about open source. It was about much more than that. As I learned over time, Liferay sets aside 10% of the profits for giving back to those in need. Obviously it is not the only company that donates money, but it is the only software vendor that I know of, that was created with that purpose in mind. Someone has come up with an idea to actually turn that “terrible waste of money” my wife was talking about, into “something that actually helps people”. And it was working!

Picture of Liferay's office with “For Life“ sign highlighted

Probably most developers joined Liferay because they have a passion for technology and open source and because Liferay is a really good employer. For many, those are good enough reasons to join and stay with the company and contribute to the next open source components providing better business solutions, barely noticing the nobel goal in the background. Indeed, the fact my company had greater purpose made me feel much better about what I was doing. Yet, it is hard to imagine what impact your work have on another person’s life if all it comes down to, is a money transfer made by your employer. But as it turns out, there is a way to reach the human inside the employee.

Bikes for Burma

So, imagine a company gathering that, gets the people together in a tent for some team building activities.

Picture from "Bikes for Burma" event Say people are divided into 30 groups and each has to put together a kids’ bike from the provided parts.

Picture from "Bikes for Burma" event All bikes are to be donated to a local nonprofit organization that will deliver them to refugee children from Burma.

Picture from "Bikes for Burma" event Once they are done, the leader of the nonprofit organization goes on stage to thank everyone. He concludes by saying that the best way to understand how much this assembly work means for those poor kids is to be able to see their faces when they receive the bikes.

Picture from "Bikes for Burma" event Then the door opens and the kids and their parents get in the tent to receive the gifts.

Picture from "Bikes for Burma" event

Clean water in Guatemala

Imagine that later on a group of employees join a non-profit organization that helps communities in developing countries create sustainable water and go to the green valleys of Guatemala to help the local drilling team build a well for a community desperately in need of clean water.

Picture of the well in Guatemala

The Water Walk

Imagine there is a software conference which has a lighted path and two 40lb (18kg) jugs of water. Whenever someone carries the jugs to the end of the lighted path and back, so they get to understand what in many corners of the world, children have to do every day, a $30 donation is made to charity:water to build wells in developing nations.

Picture from Liferay North America Symposium

EVP

You’ve guessed right, all these already happened at Liferay and gave me and many of my colleagues a purpose not found in other software companies. But then the next question arises - who decides who will get the help? Of course for each of us there is slightly different thing that matters most. And people do their best when they do things they deeply care about. It turned out there was a solution for that problem too. It’s called Employee Volunteer Program (EVP) and I was watching it grow and expand worldwide over the last few years.

EVP's home page

EVP allows employees to realize their own passions for making impact both in their local communities and worldwide. EVP gives each full-time employee up to 40 paid hours per calendar year to be used to provide service related to disaster relief, providing food, water and shelter, basic health and education, vocational empowerment, freedom and justice. EVP also allows full-time employees to request up to 500 EUR in combined grant funds per calendar year to be distributed to a nonprofit organization.

Here are just a few things EVP made possible:

Map showing places on earth where people have participated in EVP

  • Liferay employees traveled to Haiti after the devastating 2010 earthquake to help rebuild.
  • Liferayers traveled to Treme, New Orleans as Liferay’s first group service team to help rebuild after Hurricane Katrina.
  • Liferay employee was able to support and encourage his friend contracted with a very large brain tumor.
  • Several Liferay teams have traveled to Japan, to help in rebuilding houses and businesses after devastating earthquake and tsunami in 2011.
  • Liferayers traveled to New Jersey to help with relief work after Hurricane Sandy devastated the East Coast in 2012.
  • Liferay Dalian’s employees went to Wenshan, China in 2014 and 2015 to bring joy and fun to special needs children and their families.
  • The Liferay Brazil office collected 700 kg (1543 pounds) of food to help poor families in the state of Pernambuco.
  • Throughout 2015, Liferay sent monthly teams to serve at Skid Row - an LA neighborhood that has one of the largest homeless populations in the US.
  • Members of the Liferay Madrid office partnered with local nonprofit to refurbish a house that will be used as a shelter for victims of human trafficking.
  • Two Liferay Support engineers conducted a five-week coding workshop to introduce a group of inner-city kids to the wonderful world of programming.
  • The Liferay Brazil office helped build and open an independent library with 2000 books
  • Australia team hosted a family Christmas party for local children and their families.
  • Liferay LA team partnered with nonprofit organization to renovate a thrift store that serves women rescued from trafficking
  • A Liferay employee traveled to Greece to serve Syrian refugees who are waiting for entry into the EU.
  • A Liferay employee’s family has grown from five to eight through adoption.

Stats from EVP's web site

At the time of writing, EVP has been active for 8 years. During this time 622 employees have participated resulting in 18272 service hours and 371318 EUR grant money distributed to 408 nonprofits!

Why am I telling you all this?

Liferay is not a charity organization but for-profit software company. As such is suffers from all the issues present is such companies. People disagree with each other, miscommunicate, make mistakes, have to make hard choices, need to keep up with ever changing software trends and customer expectations, have to keep deadlines, sometimes sacrifice things they value … oh, you name it. The amount of things I’ve been frustrated with in the last 5 years, would normally have been more than enough reason for me to leave. Before Liferay I was very good at arguing. I practice that skill here as well but I’m now learning to listen, understand, forgive, rethink and try to work things out in an alternative way.

A quote by Theodore Roosevelt “No one cares how much you know, until they know how much you care“

I have autonomy, I get better at things and I don’t have the feeling my time is wasted on a code that is sentenced to grow old and forgotten in a private repo. Quite the opposite, I meet people from all over the world who use our software to build beautiful things and perhaps earn a living. I see how “more profitable” translates to “more smiling faces in some forgotten corner of earth”. When I quit my previous company I was sad because of the good friends I left behind. Quitting Liferay would mean not only that but also giving up on a great purpose.

Liferay's office wall saying “to see people reach their full potential to serve others“

But I didn’t spend all this time to give you an advice how to hook on people’s deep feelings so they don’t leave your company. There is by far more important aspect - what type of developers you cultivate in your organization. When I was junior developer, the worst thing an irresponsible programmer could cause was some money loss (well, NASA programmers excluded). Today we have planes, cars, drones, medical equipment, … and million other things powered by software. Plus social networks that can shape not only people’s purchases but also their voting habits. Careless developers could agree to write code that does illegal things (like cheating about CO₂ emissions), involuntarily kill people or even cause mass riots. At the same time, many companies still chase the mythical 10x coders and try to come up with the best way to measure developers productivity.

So here is my proposal. Let’s forget about rockstar programmers and try human programmers instead. Let’s value developers who care about humans more than (or at least equal to) those who care only about the code. Then may be, just may be, we can start thinking of how to answer Bryan’s question!

Photo of Bryan Cheung's slides saying “What if lines of code you've written == lives of people you've changed?“