Learn more about our corporate product and our team based in Hong Kong. This article covers our internal processes, development methodology and the technical setup.
Foodpanda’s organizational structure is based on five verticals (consumer, internal, vendor, rider and corporate), each one independently managed but aligned with the overall organizational strategy.
The corporate vertical is one of the newest pillars of the business and is managed out of the mighty city of Hong Kong.
The corporate product represents the B2B segment of the business. Unlike the consumer product, we focus on the office needs, ranging from overtime meal plans, through lunch programs, group orders for meetings to catering.
The set up is simple: self- sufficient team that manages our corporate product globally. The team consists of all the core functions: UX, UI, QA, product and development. We all come from different backgrounds, professionally as well as geographically, but we share a single goal: to provide the best user experience to our corporate customers.
Everything starts with the user research, which is the very reason why we are based in Hong Kong. We are close to the users. Various research methods help us generate valuable insights from the users, insights that guide our design and development and, consequently, help us deliver the very solutions that the customers are looking for.
Next, comes the wireframes. This is when we all brainstorm on the best solutions based on the wealth of experience each one of us brings to the team. You can often see us running in-house or remote usability tests, conducting contextual interviews or engaging in focus groups in order to collect feedback on the wireframes and designs. This iterative process saves us from building solutions that might not be optimal for the users. We also go into the development planning stage with more confidence, knowing that the MVP will deliver value to the users as well as the business.
The team is lean and runs on agile. Our focus is on delivering great solutions for the users with a strong technical foundation; foundation, based on modern programming practices. We also want to be fast therefore we value a good understanding of users’ motivations and pains, which saves us from writing unnecessary code. This is where research plays a huge role but the underlying processes are as crucial to our goal of a quick turnaround time.
We really value code quality, therefore the practice of code reviews, unit tests, and continuous integrations are well built into our internal processes. We strive for solutions underlined by good architecture and SOLID principles.
Technical set up
The team has been set up as an independent unit capable of its own developments and releases. We have our own AWS infrastructure managed by Terraform; our environment is dockerised, which allows us to easily update our tech stack. We use continuous integration and continuous delivery. For CI we use Travis CI (test are written in PHPUnit) and ElasticBeanstalk is the hosting solution.
The project relies on the internal RESTful APIs, which provides us with good opportunities to collaborate with our folks in Berlin.
We have just migrated to PHP 7.1 and have been enjoying gains in speed, memory usage, and performance ever since. Maintaining the right balance between delivering valuable features for the users and improving the project by introducing new technologies is at the heart of our development planning cycle. It is our belief that the new technologies provide a real value to the users by delivering a seamless experience. The recent introduction of React.js into our project has already helped to improve the front-end.
We have come a long way from setting up the team from scratch to introducing the right internal processes to deliver efficiency and ensure cross- team transparency and establishing the right collaboration forums so that we all feel a sense of ownership over the project and its evolution.