João Paulo Silva de Souza

Professional experience

  • Jan 2021 - Feb 2023: Software Engineer at Parity. I planned, designed and implemented solutions for Parity's release, tooling and automation needs.
    I used Rust, Shell scripting and automation, CI, Docker, SQL, TypeScript, Node.js, Python, Rest API, HTML and CSS.
  • Aug 2019 - Aug 2020: Web Full-Stack at Brick Abode. I developed websites used by thousands of users and worked on project tooling needs.
    I used TypeScript, JavaScript, React, F#, .NET, Shell scripting and automation, Node.js, Python, CI, Docker, WebSockets, SQL, Django, Selenium, Rest API, HTML and CSS.
  • Jan 2018 - Jul 2018: Web Front-End at BøthOfUs. I developed an app that enabled international students to send university applications from anywhere to anywhere in the world.
    I used Vue.js, JavaScript, Node.js, WebSockets, GraphQL, SASS, HTML and CSS.
  • Sep 2017 - Oct 2017: Web Full-Stack at Estudar com Você. I improved the admin dashboard and content accessibility in the company's main platform.
    I used Ruby, JavaScript, Rest API, React, SQL, HTML and CSS.
  • Mar 2017 - Sep 2017: Web Full-Stack Internship at LAIS. I worked on refactoring the code for a nationwide government health platform.
    I used PHP, Laravel, SQL, Django, Python, Rest API, HTML and CSS.
  • May 2016 - Nov 2016: Mobile Full-Stack Internship at FUNCERN. I developed an app with a novel approach for MOODLE students.
    I used .NET, SQL, JavaScript, Rest API, HTML and CSS.

Education

  • 2024 - 2025: (In progress) Associate Degree in Mechatronics at Chippewa Valley Technical College (CVTC).
  • 2015 - 2017: Bachelor's Degree in Systems Analysis from Instituto Federal do Rio Grande do Norte (IFRN).
  • 2011 - 2014: Technician Degree in Informatics from Instituto Federal do Rio Grande do Norte (IFRN).

In-depth work history

Software Engineer
Jan 2021 - Feb 2023

Technologies

Rust, Shell scripting and automation, CI, Docker, SQL, TypeScript, Node.js, Python, Rest API, HTML and CSS
Description

Oct 2022 - Feb 2023: Release Automation Engineer

I planned, designed and implemented solutions for automating Parity's release processes.

Jan 2021 - Oct 2022: Internal Tools Developer

I planned, tested and implemented whole solutions, as well as domain-specific tools, with an emphasis on robustness and reliability, for internal needs.

Responsibilities

  • Development of servers, APIs, bots and external services integrations, sometimes accompanied by simple UIs, for internal needs.
  • Planning and implementation for integration, regression and unit tests.
  • Pipeline configurations and shell scripting for CI (GitLab CI and GitHub Workflows).
  • Shell scripting for miscellaneous automation and project-specific needs.
  • Service supervision, managing system resources for spawning services, mocking services, managing events during a service's lifecycle, etc.
  • Design and plan the roadmap of new projects, as well as enhancements to existing projects, through RFCs and reviews.
  • Write holistic technical implementation-focused overviews for new and existing projects.
  • Tooling and scripting for supporting developer and business workflows.
  • CI optimization: image caching and tagging, optimal stage parallelization, managing build artifacts, coverage metrics, etc.
  • Packaging artifacts and managing secrets for deployments on Kubernetes.
  • Lay out the roadmap, break requirements into milestones, scrutinize the backlog, plan effort for tasks taking into account the next deliverable's needs.
Web Full-Stack
Aug 2019 - Aug 2020

Technologies

TypeScript, JavaScript, React, F#, .NET, Shell scripting and automation, Node.js, Python, CI, Docker, WebSockets, SQL, Django, Selenium, Rest API, HTML and CSS
Description

I participated in many different client projects since the company did not yet have its own products. Most of my time was spent on front-end development and shell scripting for CI and tooling needs. Outside of coding, I evaluated technologies and shared feedback about my developer experience. Finally, I also proposed some improvements for software development processes within the company.

3 months: Royalty Exchange - Django + SQL + React

I contributed to a huge 4-years-old-plus codebase for a Django application which had been migrating its templates to React. The work entailed maintaining a marketplace for trading assets and leveraging royalties from them. The back-end features relied heavily on document processing (e.g. parsing assets' catalogs), while the UI allowed for fine-grained user-interactions related to trades and sales, such as auctioning assets, requesting valuations, presenting sales and resales histories, etc.

3 months: Covar.io - Python + Redux + React

I developed a high-frequency trading UI for an exchange broker which made use of WebSockets for real-time live trading data. The UI was entirely customizable, as it allowed for arbitrary stateful widgets to be placed and removed from a tiled grid using drag-and-drop gestures and keyboard shortcuts. Widgets could also be detached from the grid and moved into a pop-up, while still maintaining interaction with the main window. The UX was tailored towards experienced traders accostumed to "Bloomberg Terminal"-ish interfaces, thus navigation was keyboard-focused, featuring lots of shortcuts. Interactions within and between components made heavy use of event listeners.

1 month: Prototyping

I evaluated the business viability of several different technologies by developing prototypes and documenting my experience while doing so. The criteria entailed: tooling and editor support, developer productivity, debuggability, ecosystem maturity, onboarding cost, etc. Among the trialed technologies, notably: React-Native, Flutter, CMSes, miscellaneous tools for project maintenance.

2 months: Drawbridge - WebGL + React

I built an interactive 3D model for Drawbridge, a cybersecurity-related hardware product, using Three.js and React.

3 months: Covar.io - F# + Fable + React

First I validated the viability of F# through prototypes such as: ergonomic interop between C# and F#, serialization and encoding libraries, websockets, asynchronous task execution model, etc. After successfully landing a back-end + app MVP, I worked mostly as a front-end developer using the Elm architecture for Fable (Elmish).

Responsibilities

  • End-to-end testing for web (Nightwatch, Selenium, WebDriverIO) and mobile (Appium), both local and in the cloud (BrowserStack).
  • Writing scripts and makefiles for CI stages or project-wide conveniences (e.g. source code formatting with custom blacklist rules).
  • Code generation tools for TS/JS projects.
  • Whole setup for front-end projects: bundler, linter, formatter, styling, state store, module structure conventions, etc; generally TS + React + Redux.
  • Risk evaluation and long-term estimation for big features and new projects.
  • Python scripts for UML generation.
  • Figma wireframes for simple screen concepts.
  • Engaging new developers into contributing through high-level architecture documents, advocating for conventions and 1-on-1 guidance.
  • Integration and unit-testing for front-end applications.
Web Front-End
Jan 2018 - Jul 2018

Technologies

Vue.js, JavaScript, Node.js, WebSockets, GraphQL, SASS, HTML and CSS
Description

I worked on a Vue SPA which enabled international students to send university applications from anywhere to anywhere in the world.

As a front-end developer, I queried a GraphQL endpoint for filtering and presenting universities. GraphQL Mutations were used primarily for saving favorite lists, editing the profile, filling out applications, etc. On the social network side of the app, WebSockets were used for real-time interaction with other students, such as chat messages, friend requests, etc.

Outside of API interactions and coding the UI, I also coordinated the responsiveness and presentation efforts with the design team.

Responsibilities

  • Responsive design development with SCSS + Vue + Vuex.
  • Modular component presentation pages (Storybook-like) for feedback from the design team.
  • Managing GraphQL subscriptions and WebSocket connections.
  • Social network routing and micro-iteractions (send request, handle notifications, ...).
  • Document submissions for university applications through GraphQL mutations.
Web Full-Stack
Estudar com Você(https://estudar.com.vc)
Sep 2017 - Oct 2017

Technologies

Ruby, JavaScript, Rest API, React, SQL, HTML and CSS
Description

I joined in the startup's early days, just after graduating from college. Although my performance was commended, I ended up not staying in the company for long due to personal issues I was going through outside of work. Despite my short stay, I managed to greatly improve the administrative dashboard and miscellaneous components throughout the application, such as a custom PDF viewer and embedded video players.", "The product was a digital learning platform for university students. Its stack was based on Rails + ERB with React for a few specific pages.

Responsibilities

  • Maintain the administrative dashboard (lots of forms backed by ActiveRecords).
  • Implement responsive content display (PDFs, videos, ...).
  • Interact with external video providers (Vimeo, Youtube, ...).
  • Maintain Rails' APIs (resources, endpoints, ...) and ERB templates.
Web Full-Stack Internship
Mar 2017 - Sep 2017

Technologies

PHP, Laravel, SQL, Django, Python, Rest API, HTML and CSS
Description

During college I was hired as an intern for developing a nationwide government health telediagnosis platform. This was a government-funded research internship position in which I got to interact with various teams, health institutions and public servants.

The platform revolved around contextualizing and presenting information from a massive PostgreSQL database, backed by PostGIS, for doing geographically-aware health data aggregation throughout all cities and states across Brazil.

My job was to rewrite the system from Django (Python 2) to Laravel (PHP 7). My most particular contribution was designing an API layer on top of Laravel's ORM which resembled Django's, as well designing reusable Controller abstractions for the APIs.

Responsibilities

  • Rewrite the system in PHP.
  • DBA-esque work for PostgreSQL (restoring dumps, setting up migrations, ...).
  • Refactor the administrative dashboard.
  • Conceive programming APIs for the REST and ORM layers.
Mobile Full-Stack Internship
May 2016 - Nov 2016

Technologies

.NET, SQL, JavaScript, Rest API, HTML and CSS
Description

During college I was hired as an intern for developing a Cordova-based UWP MOODLE mobile app. This was a government-funded research internship position in which I had FUNCERN (a government agency for fostering tech innovation) as my stakeholder.

The app's main novelty was that it automatically and seamlessly persisted all visited content for offline access. Instead of using MOODLE's PHP extensions, I created a .NET WebAPI by reverse-engineering MOODLE's native functionality and database.

Responsibilities

  • Validate the UWP stack for real-world application needs.
  • Reverse engineer MOODLE's architecture and features for a custom .NET API.

CV generated from https://resolritter.vercel.app/cv