Develop and maintain the API for https://infiniterabbitholes.com/ games. User registration, login, in-app payments, game state control, and other features. Also, develop and integrate with a Shopify Store for selling the board games Online and integrate with other retailers. Tech stack: Elixir, Phoenix, LiveView (rich interactions from server), TailwindCSS, Alpine.js, API, Postgres, Shopify
Working on a Rails application that serves as an API for our mobile app, an admin interface for our client managers, a SPA for one of the features, and a data ingestion pipeline to import and aggregate data from various other systems of our clients. We have tested both in RSpec and Cypress (for end-to-end). Our scrum meetings are daily and we do retro and planning every week. We take care of the stories end to end, from choosing the story to getting acceptance to deployment in production. Also working on a PubSub system that reads from a message bus and pushes data to our mobile applications, to avoid long polling and improve performance with soft real-time updates. Tech stack: Elixir, Phoenix PubSub, Server Push, Ruby on Rails, VueJS, Postgres, Redis, DelayedJob, Sidekiq, ElasticSearch, AWS S3, AWS Lambda.
The first frontier of our system is an application that receives data from a Manufacturing plant. We deploy meters and sensors from our partners to that plant. These sensors are connected to IoT devices that communicate with our servers. The data is sent from the IoT devices to our MQTT Message Broker. This broker makes sure that the device can send the data to that topic and keeps the message for consumption. Our server then consumes the messages, taking into consideration the data that came in, we normalize that data, put it into a central server, and then send this data to our other systems. I architected this part of the system and developed the server that consumes the data. Tech used: Elixir, MQTT, RabbitMQ, PostgreSQL, Phoenix Framework
Neru is a payment mobile application. It allows businesses and individuals to receive money without hassles. Onboarding, invoices, and withdrawals, are all done through Neru. I and another Senior developer developed the first mobile application of Neru that went to the store. Later, as we saw a big growth in our user base and realized the potential of the business, we brought more developers to the team. We had an Android Developer, an iOS dev, and a Backend one. I started leading the team to build the native mobile applications. We also had an API that was able to connect to the following payment providers: Iugu (iugu.com), Zoop (zoop.co), Wirecard (wirecard.com.br), and GetNet (getnet.com.br). I architected the solution, setting the base so that our system would be able to communicate with multiple Payment Providers. Tech used: Elixir, Phoenix Framework, REST API, Firebase (Cloud Firestore, Cloud Messaging, Auth), Nativescript, Typescript, Angular
ActionNetwork is a mission-driven organization dedicated to building online power for the progressive movement. I was part of the team that developed the following functionalities on the system: Event Ticketed event Fundraiser Form Report Search and Add Activists Files Group Besides developing the controllers, models, and actions for these parts of the system, we also did a lot of work on background processing in there with Redis. There was a complex subscription system after the user signed a petition. Tech used: Ruby on Rails, MySQL, Redis, Sidekiq, ElasticSearch, Sendgrid, Stripe.
An accounting SaaS called Negócio Simples. It was a platform that had a business owner view to input data and gets some reports and an accountant view to consolidate data, view advanced reports and suggest changes based on performance. I architected and developed the solution with another developer. It was an Angular2 app backed by an Elixir/Phoenix API. Tech used: Elixir, Angular, PostgreSQL, Ruby on Rails, ReactJS, Ionic, Nativescript, Typescript.