The panelist of experts conveyed a story that, across the major focus areas, hinted at an underlying difficulty at living day to day life exacerbated by the language gaps experienced in every day interactions. This was conveyed as cutting so deeply at the lives of immigrants that they are even unwilling to travel away from their local communities or engage with social and societal services.
What it does
Beacon allows for both just-in-time interpretation services and enabling longer term service pairings to help navigate institutional and cultural issues.
In the category of just-in-time services, there are specialized categories for 'high stress' subjects like medical interpretation and interactions with law enforcement. A non-native speaker who initiates a request for help causes the system to search through its on-call volunteer bank for someone who can provide the needed capability. It then reaches out to that volunteer to make sure they are available, and connects the two individuals 'anonymously' through a system phone bridge. If that individual doesn't pick up, or can't help at that exact point in time, the system continues down the call chain to find another volunteer. The immediate request functionality can also be accessed through an interactive call tree, for users with low native language literacy.
For needs that are not immediate, the system provides a dashboard to make those requests, and presents them to volunteers who meet the language and capability requirements to opt-into helping. Some examples of those requests include resume translation and guidance, institutional process walkthroughs, and general question and answer requests. Once that pairing is made, the requesting user is given the ability to call the volunteer through our phone bridge to protect their information if the interaction doesn't go well.
How we built it
The Beacon system is a modern layered architecture; an Angular single-page web application, a Spring Boot self-contained API & orchestration layer, all sitting on top of MongoDB for persistence.
The entire system runs in a Docker cluster, hosted in the cloud, with full CI/CD through Git -> Jenkins -> DockerHub -> Digital Ocean + Docker Compose. This is designed to be maintainable by organizations with minimal IT infrastructure with our reliance on containers making porting the system to whatever existing hosting solution can be provided far easier.
We rely on Twilio, a service provider that allows for custom code to be provided that orchestrates call handling and interactive text-to-speech scripts. The capabilities Twilio brings to the system allow for rapid expansion of features in the call handling space - text conversations, video conferences, call recording, etc.
The system is also built on top of Auth0, an industry accepted authentication provider to help us be sure that people who use the system really are who they say they are. Not having to solve the user management problem directly accelerated our development efforts considerably.
Challenges we ran into
- Using Twilio in the fashion we are (establishing user to user phone calls, in addition to IVR) was new to the whole team.
- The issues that effect foreign-born people were new to the team, and a significant amount of time was spent in conversations with the SMEs and in discussions to try to put ourselves in their shoes and prioritize our work to that point of view.
- Doing internationalization well, across all the layers of a system, is complicated. We'd like to thank the SME table, especially Eduardo Seqeira, for guiding us on the distinction between interpretation/translation and providing / correcting our translations.
- Team size vs. Solution Space We would have easily benefitted from another developer team member to help with the fact that our original MVP goal targeted three distinct user groups across a significant set of workflows
Accomplishments that we're proud of
- The anonymous nature of the phone handoff protects parties on both sides, while allowing a road map for the future that can easily implement phone audits and protect against abuse
- The ability of the system to pull from around the globe to provide interpreters and services allows for fine grain targeting of locales and needs while maintaining sufficient populations that response rates and times can be maintained
What we learned
As a team of development consultants, our learning was focused primarily on the problem space. There are a lot of aspects of being native-born that are so ingrained that it was really eye opening to listen to the expert panel and SMEs talk about problems we had never considered;
- Cultural differences in institutions specific to America (especially things like credit scores, the insurance industry, etc.)
- The 'fear'/'caution' reflex that is heightened by a reliance on interpreters for many foreign-born individuals; a problem that causes isolation and limits the ability to live a fulfilling life
- Difficulty aligning global good-will and specific actionable tasks to improve lives
On the technical side, we explored several different methods of internationalization. We also learned a lot about Twilio, their domain-specific language, and the 'call-center' style interface they provide.
What's next for Beacon
- Moderation Support
We really want to dive into providing selected organizations with moderator features in the system (phone recording audits, volunteer capability verification, expanding the supported capability list, etc.)
- Interaction Feedback
We realize there is a need for a feedback system to help maintain the quality of the volunteer pool and serve as a flagging analytic for Moderators to focus their efforts at training and auditing volunteers.
- 'Professional' Volunteer Support
There is a large body of volunteers that would regularly be 'on-call' in the system, aligning with their schedule at their non-profits and care organizations. This could also bridge into service providers, who if accredited, might provide volunteers to the system as a lead generation / marketing system. There are a lot of potentials for abuse in that area, so significant checks and balances would need to be involved