summaryrefslogtreecommitdiff
path: root/content/resume/ario.md
blob: c80d194b108e01321c6024167a8773a4d4be6f69 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
+++
title = "Ario"
author = ["Roger Gonzalez"]
date = 2024-09-17
lastmod = 2024-09-17T17:47:08-03:00
draft = false
weight = 1002
+++

## About the project {#about-the-project}

[Gather](https://www.getgather.com/) is an AI startup that developed
[Ario](https://www.heyario.com/), an innovative AI life assistant. Ario is designed to
integrate seamlessly with users' lives, learning from their calendars, locations, emails, and
more to provide personalized assistance.

At Gather, I utilize a diverse set of technologies including Python, Sanic, Celery, PostgreSQL
and more. This role has allowed me to continuously develop and apply my skills in a dynamic
and innovative environment, contributing to the success of Gather's flagship product, Ario.

## Tech Stack {#tech-stack}

-   Python
-   Sanic
-   Celery
-   PostgreSQL
-   Github Actions

## What did I work on? {#what-did-i-work-on}

In my role, I have been a key member of the backend team, and my responsibilities have
included:

- Migrating the backend from Tornado to Sanic: This transition has allowed us to leverage
Sanic's asynchronous capabilities, improving the overall performance and scalability of our
system.
- Asynchronous Function Implementation: I moved all blocking operations outside of the main
loop by making the functions async, ensuring non-blocking, efficient operations.
- Enhancing Reminders Functionality: I have worked extensively on the reminders feature,
ensuring timely and accurate notifications for users.
- Improving Push Notifications: I have made significant improvements to our push notification
system, enhancing reliability and analytics.
- Developing a New Scheduler: Currently, I am working on a new scheduler to abstract
asynchronous operations and cron events further by running them in Celery, providing more
robust and flexible task scheduling.