Inspiration

In 2023, loneliness and stress has become an ever increasing problem. It is further exasperated with the false sense of options in the dating world. Facets is a wellness app that supports people in their dating journey by helping people build self awareness through acceptance commitment therapy.

What it does

Self awareness is a key factor in helping people form better connections and be happier. In the current project we built out the portion that helps people gain external self-awareness. People need others to realize their blindspots. By allowing people to create a dating profile, which can be shared to friends, families, acquaintances, potential dates, forums... through a public link that they can deactivate, the user is able to get information about the personality attributes the profile portray. This angle helps users understand the importance of what the profile communicates about them, and gives them data in a central location, as well as, additional feedback. When our user gets feedback, we used Twilio Segment Engage Journey feature to be able to trigger email notifications that let the user know they got new feedback.

How we built it

We used react-native to build out and iOS and android app that the user can use to build their profile. Our backend is based on nodejs and our database is using postgres. We used next js to build the feedback webapp that users used to give feedback on the profile created in the react-native app.

We tracked all page views and events using Twilio Segment. We also leveraged databricks with AWS to be able to easily test our pipeline with event data. We used the reverse ETL feature to get 1100 records of synthetic data pushed through a google sheet that was synced to mix panel. Mix panel was used for data visualization. For our mailing service we used mailchimp.

Challenges we ran into

Throughout our project, we faced several significant challenges, particularly in integrating various technologies.

Azure MySQL Database Integration with Segment for Mailchimp: Our initial plan was to connect an Azure MySQL database with Segment for use with Mailchimp. We encountered persistent issues in establishing a stable connection, which led us to pivot to Postgres. We needed to disable SSL and firewalls, for some reason this didn't work for MySQL.

Segment Engage and SendGrid Pro: We tried requesting a SendGrid Pro account but didn't receive one during the hackathon:

Would it be possible to receive a new Twilio SendGrid Pro account for the DataPalooza hackathon?

The context is https://segment.com/docs/engage/onboarding/#create-your-sendgrid-pro-account

Without access to SendGrid Pro, we opted to use Mailchimp as follows.

Segment Engage Audiences and Mailchimp: Once we got our mailchimp warehouse we synced from Mailchimp to Segment. We began creating a user journey email campaign. We didn't have time to figure out how segment could update mailchimp with new user emails.

Segment Unify Traits Complications: Implementing Segment Unify Traits presented its own set of challenges. The requirement for a minimum of 5000 records (the exact nature of which was not clearly specified on the website) compelled us to generate over 8000 records using Databricks. This process was not as straightforward as we had hoped. We still were unable to get it to work.

Segment Unity Traits would ** not let us ** select Databricks Raw ETL as a Source. The only Sources we could select are Mobile App #1, Web #1 and Web #2 — instead of Databricks #1.

https://app.segment.com/facets-one/unify/spaces/facets/traits/new

Data requirements for prediction

To create a prediction, you must meet minimum data size requirements from the last 30 days so that the prediction has enough data to learn from.

⚠️ 2

Past users who performed this event

5,000

Minimum needed

⚠️ Data Warning

This might not yield a useful prediction, try choosing a different event with more data.

https://app.segment.com/facets-one/unify/spaces/facets/predictive-traits/prd_2Z3v2DXOQMq94ODGeBOMUeFpJNz/prediction

This trait is being computed...

To explore segments of your trait and create audiences, check back in later and refresh the page.

https://app.segment.com/facets-one/unify/spaces/facets/predictive-traits/prd_2Z3v2DXOQMq94ODGeBOMUeFpJNz/overview

Computed trait failed

We weren't able to create this prediction because there aren't enough customers that have performed this target event. Please select a different prediction event and try again.

Data Generation and Spreadsheet Integration: Despite our efforts to generate a substantial amount of data, we encountered a significant runtime challenge during the integration process. Generating 8000 records in Databricks consumed 50 minutes, while transmitting 4000 records from the segment to the spreadsheet required 3 hours. Consequently, conducting comprehensive tests on substantial data volumes was difficult due to the extended runtime.

Syncing Issues with Mixpanel: The final hurdle was syncing the data with Mixpanel. Despite our efforts, we faced difficulties in mapping some records to Mixpanel. The lack of clarity on why certain records were not syncing as expected was a significant obstacle, and we were unable to fully resolve this issue within the project's timeframe.

Accomplishments that we're proud of

We're thrilled to announce that our initial version of the React Native app is set for deployment, currently undergoing the app review process. This hackathon has been instrumental in our progress, particularly in implementing Segment and structuring our analytics effectively. Thanks to this event, we've established a streamlined approach to centralize our data right from the outset.

Additionally, this hackathon has been a remarkable journey for Hema, marking her return to the tech world after maternity leave. It has provided her with an excellent opportunity to not only refresh her skills but also to boost her confidence and experience in the field.

What we learned

We learned that naming events was dependent on how we wanted to filter users during the user story or have specific events trigger email campaigns. Getting our pipeline up for deployment was a huge learning when building this app. Databricks was new to all but one of our team members.

What's next for Facets - Dating Profile Feedback

We are going to beta launch our first main feature! We plan to fully test our share app users with our beta testers and use the data we captured via segment to decide on which features to build or fix. Next we need to incorporate our other features that help users gain more internal self awareness.

Built With

Share this project:

Updates