Almost 500 years ago, Jacques Cartier landed upon Canada after a daring crossing of the Atlantic. Like many European explorers at the time, Cartier used a ship known as a galleon for his expedition. Today, centuries later, about 23 thousand immigrants arrive on Canada's shores every month. And yet, these immigrants, even in today's age of technology, often have trouble in their immigration process - whether it be due to lack of information or just merely having no one to talk to. Our website, Galleon, aims to be a modern-day version of the ships of the past - offering a comprehensive, custom tailored experience intended to make immigration an exciting time for everyone - as it should be, rather than the scary and even frightening process it is for so many today.
What it does
Galleon welcomes every new user by asking them to fill out their personal information - such information includes age, education level, language proficiency scores, and so on. This data is then combined with Canada's official immigration guidelines to offer the user a predicted Comprehensive Ranking System (CRS) score, a system used by the Canadian government to weigh different factors in potential immigrants. Galleon will then begin tailoring the immigration experience to the user - whether it be suggesting potential language exams to take or considering applying for a Trade Occupation Certificate, Galleon adapts to the user's needs in order to give them the best chance of entering the country. We also use historical immigration statistics to offer insight into Canadian immigration policy, along with allowing successful entrants to sign up as mentors in order to further facilitate the process for those that are following their steps.
How we built it
User authentication and data storage was solved using Firebase, Google's cloud platform. Firebase allowed us to experiment with many different authentication options - from email to Twitter, it was easy for users to login. Firebase also was advantageous in that its real time database meant we didn't have to stage database commits, making the website fast. For long-term data storage of past immigrants as mentors, we used CockroachDB due to its cloud-integrated nature, offering redundancy and easy node distribution meaning our database was very reliable. Historical data was provided by the Canadian Open Data Exchange, and the conversational chat-bot was not a challenge to setup due to Microsoft Azure's Bot Service API, allowing us to easily format common questions and answers in the form of a bot.
Challenges we ran into
The problem we were trying to solve involved simplifying complicated government processes into easy to understand steps. However, this meant we ourselves had to research and deal with the complex government processes in order to reduce their difficulty. This meant a lot of time was spent performing research on Canadian immigration policy. On the technical side, we encountered some difficulty in matching users to potential mentors - this involved writing an algorithm to minimize the difference between the user and their mentor, so the user can talk to someone who was in a similar position to them.
Accomplishments that we're proud of
One design accomplishment we're proud of is that Galleon tackles a real-world problem and can have immediate consequences right away. By combining historical data, mentors, and a dynamic experience that changes based on the user's details, Galleon takes what were previously useful but separate tools and synthesizes them into one massively helpful end product. In a technical aspect, we were proud to have implemented some new bleeding-edge technology such as Microsoft's Azure Bot Service API, which is an alternative to a regular boring FAQ page, instead offering a human conversational-like experience.
What we learned
On the back-end, our team had never used Firebase before and we're glad to have learned this groundbreaking cloud platform that offers a drop-in solution for many project needs. Additionally, we also picked up CockroachDB which combines the best of two worlds - the ease of use of MongoDB and the stability of SQL. We were also very excited to have worked well together as a team, and learned how to best make use of everyone's individual and unique talents.