YPlan event app has launched in London just three weeks ago – and has already received rave reviews both from the media, customers and Stephen Fry himself. We are talking today to their Co-Founder & CTO Viktoras Jucikas on how they organize their development process.
What does YPlan do?
YPlan is tonight’s going out app. We are helping people to discover events to go to, for the same night. We give the consumers a beautifully designed app where they can see a short, curated list of events, select the ones they like, pay in two taps, and go to the event on the same evening. There is no need to make any phone calls, print any paper tickets, go to any third-party website – you pay what you see on the app. It is a very smooth and slick experience for the user, and you just get to see the show you like on the very same evening.
What is your role in the company?
I am a co-founder and CTO of YPlan.
How big is your development team? How is it organized?
At the moment the whole YPlan team is 17 people. We grew from two founders four months ago to 17 people now. It has been pretty manic in the first two months, when I would basically onboard two new joiners every week. In the development team we currently have three dedicated developers, myself as not so dedicated developer, one UI designer, one on-and-off UX designer, and a contractor who does our website bit.
What is your development process? How often do you release?
As any start-up, we have very limited resources both in time and in headcount. So you cannot really have a very complicated, heavyweight process when you are operating under such restrictions. I found that the only thing that works is getting very smart people, and effectively letting them loose. You are guiding them in the process and making sure that everyone is aligned on the same vision – but you really try to interfere as little as possible in the daily process. You want them to focus on what they do best – building the product.
We have a rough list of milestones and deliverables for every milestone. We also have an understanding on what are our priorities – and we are tackling those milestones. For example, for our iOS app we’re working in 6-8 week release cycles. Whoever is developing the iOS part – which is one developer, one designer, plus myself from time to time – we try to get all the features and polish all existing things in the first four weeks of the cycle. For the remaining two to four weeks there is a feature freeze, and we give it out to our employees to test it.
It is important to get into such cycle to make sure that one does not add additional features at the end of the cycle, when it is very difficult to test them. So before launch it was a rush to get everything done as quickly as you can, and we now want to settle into such cycle, and make sure that we are not updating the app too often, or not updating at all.
Do you have any interim deadlines?
We have Monday stand-up meetings, where everyone briefly describes what they are doing. We also have Friday demo lunch, where everyone shares what he or she has been doing last week. So everyone in the team – be it in sales, marketing, or development – has a very good sense on what everyone else is doing, which is very important to move fast and keep these efforts in sync. These meetings act as checkpoints to see what is happening, and I then work individually with every developer to help prioritise their next week(s).
What are the challenges you encounter?
We have now released an iOS app – we launched three weeks ago to an overwhelmingly positive reception from media and from our early customers. The next challenge is to go to other platforms than iOS, and that is a very big challenge on its own. A new platform basically means rebuilding the app from scratch – you cannot really reuse much, especially as our app is fully native, not HTML5. Luckily for us, the backend infrastructure is now finally stabilizing, some APIs are already there, and the UX is optimized, most of which can be easily transplanted to other platforms, like Android or Windows Phone.
While scaling our user base we need to make sure that YPlan’s backend servers function all the time. The tricky thing here is that YPlan is about mobile payments and mobile commerce and people are very sensitive about making payments over the phone. We have to be very careful and provide the best possible experience for people to use us. You cannot really have any downtime or any problems when the servers are not working. So that is another challenge for us, making sure that the backend is just working flawlessly all the time.
Do you plan to do any changes in the development process going forward?
As we expand what YPlan does, we are looking to hire more people for app development across multiple platforms (Android, Windows Phone) and for Python/Django stack in the backend. The team will grow and it will present its own challenges in communication and the way we work together. Nevertheless, I am not overthinking this too much, and will solve it when the time comes.
Do you have any advice to other start-ups and CTOs?
It is a tricky one! You have to start on the right foot. You have to get really good people, that is probably 90% of making it right, I’m very happy to work with our current team. Once you have that, you want to move fast. In our case it was avoiding any rigorous and heavyweight process which doesn’t work from my previous life experience and just communicate with each other to keep everyone on the same vision. So my advice is to hire smart people and let them do smart things.