It has been a while since I've written an article. There were only news updates from me for the past couple of months. Since it's the last day of the year, I thought I should write one final post for 2015. Something more educational.
Most of us independent developers start off as hobbyists, unfortunately many of us keep the mindset of a hobbyist even when trying to release a commercial game. This article contains a list of things that will help you take your team to the next level. I do not claim to be an expert on management or business development, those are just things I picked up during the few years I've been managing eNVy softworks. Many of them we started implementing just this year.
If you are a hobbyist and happy with it you can completely disregard this article. For those of you that are interested in making a living out of the video games you make, I suggest you keep on reading.
First of all let me explain why this is important. Game development is hard. From a technical standpoint it is one of the hardest career paths you can take. Do you know what is harder that being a game developer? Being an independent game developer! We take so much pride in the fact that we are indie that sometimes we forget that we are part of the same industry as the AAA developers. We may offer a different product and maybe not exactly share the same market as them but we are still both making games. Our only difference is the scope. In its core every indie studio is just a really small AAA company, with really crazy stakeholders that are not afraid of taking risks. Like it or not there are certain things AAA companies do right. So how about scaling those down to our level?
Find out Who you are
People nowadays talk about an indiepocalypse. There is talk about how the tremendously big number of indie games flooding the market will destroy many indie studios. For me there is a way to survive this and this is by understanding a few simple things about who you are and what you are doing. Are you a hobbyist or a pro? It does not matter if you are making thousands of dollars a year or if you have not yet finished one single game. It does not matter if you are a 10 people studio or a guy working out of his garage. Being a professional and being a hobbyist are just mindsets. You are what you act like and the sooner you realize this, the better. Pretending to be something you are not CAN make it true. I often hear people complaining about their lack of experience and how they can not possibly be professionals. For me this kind of thinking is completely insane. Implementing simple strategies to help you change your mindset and reach for the sky does not require experience. Every single skill a person can learn can be cultivated into something great. That includes the way one works, and working like a hobbyist will not take you very far. So I will ask you again... are you a hobbyist or a pro?
Have a Chain of Command
This one may upset a few people but I will say it nonetheless. Hierarchy is important! Look I get it. You are indie, you do not want to turn into corporate fodder and you are right to think so! Getting a chain of command does not need to make you a tyrant your subordinates fear!
Someone has to call the shots! During development there is no time nor energy for a group of people disagreeing over every single detail! Of course you should hear your team-mates! Of course everyone should contribute in the creation of the game! But, sometimes, someone has to put his foot down. To finish a game everyone should be accountable to someone.
You can still be a democracy. Discuss and vote on big picture decisions. As a manager be open to suggestions from the rest of the group and NEVER shut someone down without explaining why.
Find the hierarchy model you think works better for you and follow it. If nothing works create one yourself tailored to your needs. Not all of us can be leaders and that is okay. Find the guy in your team that has the most self-control and can regulate himself and let him lead.
Recently a fellow game developer I respect asked me what eNVy's goal is. I gave him some answers and he refused every single one of them. That made me think. Do we really have a goal? What is eNVy actually doing? It took me sometime but I think I now know what he meant.
I myself were always saying that if you do not have a goal there is no possible way you can achieve it. I still believe that, but I now understand that a company can not simply have one goal. There is no real answer to the question what is your goal. Mission statement is just words to someone just starting. That is not a bad thing. You do not need a mission statement to get things done.
What you really need is tangible goals. How do you find what those are? Ask yourself some questions. Where are you heading? Where do you see your team in 10 years? Why are you making games? Why did you chose to go indie? Find out the answers to those questions and you will realize what you want to do. Once you see the big picture, write down a list of ways to get there. Lay down the road you are going to follow. Make those way-points as specific and simple as possible. Break them down to the point each one of them is achievable. Those are your goals. Respect them and adjust as needed.
Know What you Know
This one is maybe the hardest problem you have to face. I found this awesome graph by Simon Wardley that explains how we perceive our knowledge over time.
The part where you should try to get is,past the intersection of the yellow and green line. After that point, you pretty much know where you stand. It is really important for you as a manager to know exactly where your limits are. It is common when in a place of power to try doing everything yourself. Let me save you some time. If you don't have to, don't do it. You do have more important thing to do and you do have team-mates to help you out.
Knowing what you know will help you understand when you should trust yourself and when your team-mates. Don't be cocky. You jeopardize everything by claiming you know everything.
Know What your Team Knows
The first part of being successful in managing people is to know what the people you are managing are capable of. This way you can always know who to turn to when a specific problem arises. You know who the expert is in every domain and you know who's word to trust. Assigning tasks will get immensely easier once you understand who is good at what.
To find that out ask them, test them and just work with them. Soon enough you will figure it out.
Get your Tools in Order
Developers use dozens of tools to make their work easier. For every single problem you face during development there is already a tool out there that will help you solve it. Just search for it. You need a way to communicate with your team-mates? Try Slack. You need a simple way to assign tasks to your team members? Try Trello.
There is always a solution and if there is not you can always make one. Just try to recognize what your problem is. Once you achieve that, just Google it!
Know your Money
Another controversial subject is money. People seem to think that indies don't do it for the money. People seem to forget that indies need to eat. Maybe indies don't do it to become rich but we can't simply cross our fingers and forget about the money.
You need to be aware of exactly how much money went in and how much went out. Where did this money go? Why did it go there? Next time you buy the same thing will you be getting a better deal? Write down all your financial transactions, even if those are money you spent from your pocket and are not yet legally a company expense. Even if those are $0.06 you got from some YouTube ads.
Learning to manage money early on is really crucial for the future of your company!
Collect and store data on everything! How many hours does it take for your programmer to write a coroutine? How many times did a player die on level 196? What press outlets did write about your latest game?
Knowledge is a crucial part of a manager's job. You must know everything concerning your company. Collecting data will help you keep on track, you never know what insignificant, at the moment, metric may be of critical importance in the future.
Get a Schedule
This may sound almost ridiculous after all those things I laid before you but it is just as important. Knowing when you are supposed to work will increase your productivity by more than you can possibly imagine. In all fairness, if you really care you will never really stop thinking of your company. Even during hours you are not supposed to work. Making a schedule will help you get rid of the opposite problem. Thinking of non-work related matters while you work. I know of people that say they work all day, while in reality they only pull one or two hours of work while procrastinating during the rest of the day. That is because what is left of their workday feels like a colossal amount of time.
You do not have to work a full 8-hours a day to be productive. Find what works best for each of your team members and do that. You don't even have to work weekends if you don't want to. Work 5-hour days and set a day aside for meetings to get everyone up to speed. It is important for you to feel comfortable with what you do. A schedule will only help you get a more concise workspace. It will make you learn when you are supposed to work and when you are supposed to relax.
Every week that passes you and your team-mates may pull off around a hundred work-hours. Obviously not everyone will know what the rest have been doing. It is important for everyone to know the state the project is at. Schedule regular meetings to make sure everyone is up to speed.
Other issues may arise that are outside your control. Meetings will help you explain those issues to the team and with their help eventually solve them. A couple of hours a week should be enough in the beginning. As you grow you can adjust the nature and duration of the meetings as needed!
Get an On-line Presence
How can you still not have this? Facebook and Twitter are needed but are not enough. Get a domain! Build or buy a website! It does not need to be fancy, it just has to be out there. Get e-mail addresses @yourcompany.com! Get a small server if you can afford it! Start blogging! Start talking to groups and forums! Get yourself out there! Show the world you exist and you are awesome!
We live and work in the centre of the internet! Most people will get to know us through it. Don't make it hard for them!
The most important advice I can give you is to meet other developers. Talk to them, learn from them. They have been where you are and most are willing to help you get where they are.
Meet players as well. Talk to them and find out what they want. Understand them. They are your customers and without them you are nothing. Listen to them closely and it will help you become better.
Try to exchange contact information with all the people that may some day help you or need your help. People are a resource you must always have in hand.
Build from the Ground Up
All those things may seem overwhelming but if you build your company right, there is nothing to worry about. Never forget you are NOT a AAA company. We are trying to imitate them to an extent but they are managing thousands of people and have gross revenues of millions. You don't! If you do I have no idea why you are reading this.
You need to start from the bottom. Do only what you feel is necessary. No matter what you read in my blog or some expert article do not blindly follow advice. What I write in this article works for me and my team. It may not work for yours. Think before implementing anything.
When you do implement something don't make it big. Make it simple and build on it. You will have all the time in the world to perfect it. For now you just need something that works. Find that thing!
No matter how much you try, you can not accomplish one single thing, without people behind you. For that I want to thank my team for working so hard those past few months and all of those people that keep believing on us. You guys know who you are! Finally I want to give a huge thank you to all of you reading this blog and supporting eNVy softworks throughout 2015.
For me this was one of the best years of my life. I met awesome people that gave me advice and kind words I will forever treasure. I learned new skills and honed old ones. I spent entire nights coding and entire days sleeping. Death and Beyond is just around the corner and I could not be happier for that. Above all else I finally realized what my role in this world is. As 2016 gets closer minute after minute I can only be grateful that I have no regrets for the year that is now leaving us.
I wish the best to all of you. I wish love and laughter, I wish sweat and tears. I wish a full life and a productive 2016. I wish you work hard and accomplish everything you ever dream of and I wish we can be around to help you and bring some joy during those times you feel lost and with no purpose. But above all else I wish you never give up and you never give in. Do not forget it is in our hands to shape our future and make a better world. Let's make it an interesting one as well. What do you say?
If you want to support eNVy softworks as well as make it easier for me to continue writing these articles you can become our patron via Patreon, by donating a small amount per month! It's a win win situation! We continue doing what we love, you get cool stuff! What could possibly go wrong?