Generic placeholder image

Sebastian Gomes

Application Developer and Visualization Enthusiast

Saskatoon, Canada

About Me

Full stack software developer with extensive industry experience building web applications, RESTful backends, and cloud deployment. Co-founder and lead developer of the DilexSearch digital library. My passion lies in creating interactive visualizations and designing user experiences that are intuitive and engaging.



Skills

Front-end

Angular

JavaScript

React

Back-end

Node.js

Django

ASP.NET

Database

MongoDB

PostgreSQL

MySQL

Data Analysis

Python

R




Projects View All

UofR Library Clone

A clone of UofR library with all of it's features

Angular Node.js MongoDB

This interface is a replica of the UofR library used in a lab test for assessing Dilex

Students can issue search queries, save documents, and use complex search filters

View Details

Dilex

A cross-session academic digital library

MongoDB Angular EC2 Node.js

Unique timeline visualization for assessing past search sessions.

Search results and saved documents are organized by tasks.

Dynamic topic highlighting when search results are scrolled.

View Details

Dynamic Portfolio

A DB driven portfolio and blog site

PostgreSQL Django Docker EC2 GitHub Actions CI/CD

A database-driven portfolio and blog site that links frameworks, languages, and experiences

Written with pure Bootstrap for theming and responsiveness

DevOps best practices with Docker, CI/CD, and cloud hosting.

View Details

Natural Query Writer

An interface for building complex Boolean search queries in plain English

Angular

Issuing Boolean queries like "sailboat AND (racing OR race)" is hard

This app makes writing complex/nested Boolean queries in plain English.

Incorporates 'Mad Libs' and Lego blocks for a unique search experience.

View Details



Experience

Present

2022

Software Developer

Quadrant Newmedia Corp

Saskatoon, Canada

2022 - Present


Developed web applications with Django, React and PostgreSQL. Worked as the lead developer for many of these projects.

Django PostgreSQL React

Built a Python web scraper that aggregated school curricula, subjects, and lessons from the program websites of all Canadian provinces, saving 3 months of manual work for a large-scale e-learning platform.

PostgreSQL Python

Maintained automated unit testing and cloud deployment using CI/CD pipelines with GitHub Actions, containerized services with Docker, and deployed projects on the AWS platform.

EC2 CI/CD Docker AWS

2022

2019

Course Instructor | Grad Research Assistant

University of Regina

Regina, Canada

2019 - 2022


Developed dilexsearch.com as part of MSc. thesis; an Angular application with a Node.js Express API hosted on AWS. The visualization and design got outstanding feedback from research communities.

Angular Node.js AWS

Instructed undergraduate course CS215 for three semesters, covering web design, development (HTML5, CSS3, JavaScript, PHP), and SQL database programming.

Conducted full-time research in user-centric interface design, usability, and information visualization, leading to the publication of 3 papers at top UX conferences.

Collected user interaction data of an angular app (Dilex) with JS, stored in MongoDB by web socket channel through a node API. This data was preprocessed with Python and statistical analysis was conducted using R.

Node.js MongoDB Python R

2019

2017

Junior Software Engineer

Astha IT

Dhaka, Bangladesh

2017 - 2019


Engineered responsive, mobile-first web applications with Angular, integrating NgRx Store and lazy-loaded modules for improved caching and app fluidity.

Angular

Developed a project for managing tenants and properties of a large real estate company with ASP.NET / C#.

ASP.NET jQuery MySQL



Education

2022

2019

2017

2013




Publications

2024


In this study, we propose a new method that aggregates keywords across a search engine results page (SERP), linking them visually to their source results. We created interactive and static interfaces, conducting a lab study to gauge their impact on utility and perceived value. The results highlight the effectiveness of using interactive keywords and visualization to summarize and link search results. Interestingly, whether keywords are shown alongside each result or aggregated over the entire SERP has minimal impact, emphasizing the importance of their interactive use in revealing relationships among search results.

2022


We've built an academic digital library search interface called Dilex, aiding users in managing search tasks across mobile and desktop devices. In a controlled study, we compared Dilex to a standard academic search interface, finding increased user engagement and interaction with search results and personalization features. Participants spent more time on search result pages and showed enhanced engagement during resumed tasks. These results demonstrate the effectiveness of Dilex's visualization features in supporting cross-session search tasks and user engagement. This study showcases how semi-automatic task management and visualization can facilitate seamless cross-device search experiences.

2021


Complex academic search tasks often span multiple sessions and devices, posing challenges for task resumption. Effective support for resuming tasks on mobile devices can utilize downtime effectively, while desktop/laptop support enables seamless access to mobile work. Our paper introduces an academic search interface facilitating cross-session, cross-device search using visualizations for browsing past topics and faceted navigation for examining saved documents. This approach optimizes search continuity and accessibility across varied environments and devices.

2017


This research investigates a comparison between two different approaches for classifying emails based on their categories. Naive Bayes and Hidden Markov Model (HMM), two machine learning algorithms, have been used to detect whether an email is important or spam. Various combinations of NLP techniques- stopwords removing, stemming, and lemmatizing have been tried on both algorithms to inspect the differences in accuracy and find the best method.

2017


Along with classifying emails, this paper also describes the methodologies used for automatic meeting scheduling by an intelligent email assistant. Users who regularly send or receive messages for setting up meetings will greatly benefit from this system as it will classify their emails and schedule their meetings automatically.