Featured Startup on Windows Phone and Windows 8 - Phorego
Frank Chiang dives into biology and Greek when he describes his newest startup. Phorego, he says, "originates from the word phoresy (fôr’i-se), which is a term used to describe 'a relationship between two organisms in nature in which one gives the other a ride'; like remoras and sharks, or fungi and bark beetles."
Sounds just the way we would describe the Internet. Explains Chiang:
Our goal is to build a social transportation ecosystem to nurture this kind of relationship for people. In this ecosystem there will be many local social transportation networks belonging to universities, businesses, communities and the public. SOCIAL will be the third mode of transportation, in addition to PUBLIC and PRIVATE. We hope this will benefit individuals, businesses, communities and our planet.
We have built a real-time trip-matching service with Azure as the infrastructure. Currently available on 3 continents, 10 countries and in 5 languages. It runs on all Microsoft platforms: Windows 7 and Windows 8/RT and Windows Phone.
Drivers and passengers input their desired trips (date/time, origin, and destination, drivers can further input their desired fare and maximum distance that they would like to drive). The app’s matching engine runs in the background to find compatible matches and deliver updates to users’ devices continuously and in real time. Drivers and passengers can check out their matches, their profiles and decide if they ‘like’ each other or not. When both the driver and passenger ‘like’ each other, the driver confirms the trip. The driver picks up the passengers at the agreed upon time and delivers them to their destinations.
The app allows businesses, universities, communities and the public to build their own ‘ride groups’ and share rides among themselves. It also supports carpool/vanpooling.
We first met Frank when he was at DEMO 2012, talking about Phorego. Here's our brief video interview with him.
There's something to this. Analysts are calling this kind of use of technology the collaborative economy, or the sharing economy, and packed into this is the idea that the most efficient use of resources -- especially things like gasoline, food, water, and the sometimes non-tangible but very important resource of time -- are great sources of profit when they are shared.
This borrowing mentality, or collaborative sharing, is exactly the type of thing that launched Airbnb, and it was the mainstay for the risky but successful proposition of launching services like Lyft.
You can find the company on Twitter at @phorego. Here's our interview with Chiang about the business thinking and technology that went into building their rideshare app.
Do you build for scale first, or for revenue? How are those things related in your mind?
Since our vision is to build a global social transportation ecosystem, we have to make sure that our system can scale. We also believe that if we build something good, revenue will come. So there is no contradiction. As we are entirely self-funded we are not faced with pressure to market from investors and we can build it ‘RIGHT’ right from the start. So the choice is obvious. At this point we have achieved the ‘scale’ part, now we just have to realize the ‘revenue’ part.
Do you make reasonable predictions about how you are going to achieve revenue and then test them out, or do you start with a business model and deploy it, to see if it brings in revenue?
We only did a very crude calculations at the very beginning and concluded that we could at the very least survive, so we went ahead. Our goal is to start a movement, to introduce SOCIAL transportation as the third form of transportation, in addition to PUBLIC and PRIVATE. This is the bigger driver for us than revenue.
Frank Chiang, Founder and CEO, Phorego
Microsoft technologies that Phorego is using in conjunction with the development of its application:
DATA TIER (AZURE)
- SQL Server
- Data Sync
- Blob Storage
SERVICE TIER (AZURE)
- Web Role, Worker Role, Cache Role
- Traffic Manager
- Push Notification Service
- Metro for Windows 8 / RT and Phone
- Silverlight for Windows 7
What questions do you think a startup non-technical founder needs to answer when considering a cloud architecture for his or her startup, and I am thinking specifically here during the business model generation period?
The founder inevitably would want to know: How reliable? How secure? How soon? These would be worried by the technical people. The most important questions for the non-technical founder would be: What is the initial capital investment? What is the monthly Azure expense based on different usage scenarios? What is the monthly costs for internal technical resources? How do the costs compare to a non-cloud architecture? How much control is given up by ‘outsourcing’ the infrastructure? What are the risks and what is plan B if things don’t work out?
What questions do you and your technical co-founder / engineering team feel are the most important to solve about the business aspects of your company?
- How to design a solution that meets/exceeds business objectives? How to determine the rollout phrases and their timing to business objectives?
- How to leverage the technologies (push notification, cloud storage, multiple device interfaces, etc.) available to provide users with the best user experience?
- How to use available technologies to support marketing efforts and maximize returns?
- How to optimize revenue generation (ads, pay per use, license, etc.) in the app based on the defined revenue model?
- How to architect and engineer the application to easily accommodate future enhancements.
Where do you include technical members of your team during the building of your business plan?
Starting from the business vision, work collaboratively to determine the desired features and their rollout phrases. Ensure that the desired features technically viable. Agree on the time and resources required for the design and rollout plan. Assess and quantify the risks: How likely is it that certain things don’t work? What would be the impact if certain things don’t work? What is plan B? Etc. etc.
How much of what you are building is based on leaving a legacy and how much of it is based on technical challenges, or the ability to make something just for fun? In other words, where do you fall on the seriousness scale? For fun, for profit, for life?
The priorities are:
- Try to make a difference for our people, our community and our planet;
- Tackle the technical challenges of building something on Azure and all three Microsoft platforms (Windows Phone, Windows 7 and Windows 8/RT), and later for Android and Apple.
- To make some serious money.
When did you decide that you were “startup material”?
From previous projects.
What impact or legacy do you hope to make in the market and in the business world?
We would like to be the one to be identified as having created a global social transportation network and ecosystem. The resulting impacts would be: Save time and money on travelling for everyone, improve sense of community and quality of life, improve the environment.
What are some of the challenges you face as a founder or developer at a startup, when it comes to dealing with family life, or socially? Does working on a startup change the way you associate and interact in these areas?
To do a startup is to commit 100% of my time and energy. Luckily I am at a time in my life when I can do that without feeling much sacrifice on family life. Development work is quite a ‘lonely’ pursuit so there was a negative impact in the social aspect. Now the business is in marketing phrase I am more active in connecting with other people socially and for business purposes.
What characteristics do you possess that make you an entrepreneur? What makes your startup a startup?
- Able to create and articulate a vision.
- Able to assess a situation (or a vision) rationally and realistically.
- Able to come up with different ideas, to attack a problem from different angles, to think out of the box, to re-route when things don’t work.
- Willing to venture into new and unknown places.
- Able to persist and overcome in difficult situations.
- Have the confidence that it will work.
- Have the necessary core skills to make it happened.
- Enjoy the challenges.
- Believe in miracle?
Can you describe the relationship that you have had with Microsoft in building your startup?
Microsoft has been instrumental in helping me to get to where I am now. Besides the material help, psychologically it is very comforting and encouraging knowing that many people at Microsoft are supporting me along the way.
Just about 2 months after I joined BizSpark, I got an e-mail from the DEMO event organizer saying that Microsoft had sponsored a spot for Phorego to attend the DEMO Fall 2012 event in Santa Clara! At the event Brian Hoskins and Rodney Bowen-Wright (both Microsoft directors) came over to chat, showed their encouragement and told me that BizSpark Plus might be in store. Not soon after Microsoft Canada called and wanted to know how they could help. That led to my communication with Rob Kent (Microsoft manager in Canada) and he told me that he was ready to do the BizSpark Plus nomination. I was also invited to join a Microsoft sponsored Angel event at MaRS Discovery District in which I met Christian Beauclair (Principal Architect Evangelist) who showed his encouragement and kept an interest in following my progress. Eventually I was offered the Azure $60K offer which enables me to setup my global infrastructure without cost concerns.
Why would an entrepreneur turn to Microsoft for help in building scale, a team, or using software?
Microsoft has put in a lot of resources building BizSpark and it has some great offerings to anybody who wants to start a business using Microsoft technologies. First off one gets to use MSDN software for free. The Azure Trial offering gets one to experience Cloud technology without any upfront costs. From my experience, Microsoft is also monitoring the members and offers to help at the right moment. In my case, they could not have done a better job!
Tell us about your Azure based solution.
Our Azure based solution is the back-end to our Rideshare application.
Our vision is ‘Global Presence, Local Data’ so we have built a global infrastructure entirely out of Azure. Currently it runs on 4 datacenters (East US, West US, East Asia and West Europe) and each datacenter maintains data for that region. Local web, worker and cache roles serve local users and traffic manager is there to route traffic between regions when needed. We use caching extensively and Data Sync is to push reference data out to all regions. Azure Storage is for data backups and app storage. Our Azure services are also interacting with Push Notification Service, SMS Service and Mail Service.
How is Azure implemented in your solution?
- Data is segmented regionally. It currently is setup in East North America, West North America, West Europe and East Asia.
- Account data is stored regionally in each regional database.
- Trip and match data are stored regionally. Due to its anticipated huge volume it is also further scaled horizontally in multiple tables and databases.
- Account and Trip messages are stored regionally and processed regionally.
- System health / status information is generated and stored regionally.
- Each region has a complete set of services serving that particular region and utilizing the data in that region. When needed, services will access data to other regions transparently without need for user intervention. (e.g., an European account using Phorego in Canada)
- Account Service (web role) handles account creation, maintenance.
- Trip Service (web role) handles trip creation, trip matching and status updates.
- Processing Service (web role) handles e-mail, SMS, Push message distribution and data archiving.
- Monitoring Service (worker role) monitors health of Account, Trip and Processing services and recovers them from fault conditions when needed.
- In addition, caching service is used in Account, Trip and Processing Services and Traffic Manager will be used to route requests between different regions.
- E-mail and SMS messages are processed by 3rd party providers.
- Windows Push Notification messages are processed by Microsoft.
- Traffic Manager is used to route traffic to the appropriate data center and to load balance when needed.
- Data Sync is used to synchronize reference data among the data centers.
How did you get excited about Azure?
- There is no initial capital cost.
- There is no need to maintain a technical team to provide regular maintenance. No need to worry about staff turnover.
- There is no need to spend the effort to architect and build a complex infrastructure.
- Azure is very flexible and scalable, changing configuration and scaling can be done in no time.
- Complete infrastructure is available on day one.
What were the Azure features that prompted you to decide to build on Azure?
Before venturing into cloud technology and Azure, we were already familiar with Windows based servers, .NET services, security, etc. so it is a natural fit for us. We are able to use SQL Server, Web Role, Worker Role, Caching Role, Storage, Traffic Manager, Data Sync features naturally as configuration and scaling is easy and there is no need to perform most routine management chores.
What advice do you have for companies that are thinking about building in the cloud?
SECURITY! SECURITY! SECURITY! One cannot stress enough that company and 3rd party data have to be fully protected. Having them on the cloud can increase their exposure. So every functionality, every piece of data needs to go through security assessment to understand its potential vulnerability and the proposed security measures.
Understand the limitations (especially SQL Azure) and make sure that the solution avoids them.
Ensure that you understand the available support plans provided by Microsoft, arrange one that meets your requirements and structure your internal technical staff accordingly.