Generic placeholder image

Sebastian Gomes

Application Developer and Visualization Enthusiast

Saskatoon, Canada

About Me

I'm an experienced application developer with a background in Django, Angular, and ASP.NET frameworks. My passion lies in creating interactive visualizations and designing user experiences that are intuitive and engaging. I enjoy leveraging my technical skills to develop robust and user-friendly applications that meet the needs of clients and users alike.



Skills

Front-end

Angular

jQuery

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


Building web applications with Django. In many of these projects, working as a lead designer and lead developer.

Django PostgreSQL

Written web scraper for categorically scraping school curriculum of various provinces, grades, and subjects into a relational database for a large-scale e-learning platform.

PostgreSQL Python

Currently supporting a React-based ERP application with a Symfony backend, incorporating RabbitMQ, Elasticsearch, and CI/CD pipelines using GitLab.

MySQL PHP Symfony RabbitMQ CI/CD Docker

2022

2019

Course Instructor | Grad Research Assistant

University of Regina

Regina, Canada

2019 - 2022


Designed and developed Dilex. An angular app with Node.js API hosted on the AWS platform.

Angular Node.js EC2 MongoDB

Course Instructor of an undergrad course (CS215) for three semesters. I taught web designing, web development basics (HTML, CSS, JavaScript), and database (SQL) programming.

Worked as a full-time research assistant. My research topics included: Information seeking behaviour, Interactive Information Retrieval, UX design, and Information Visualization

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


Built multiple web applications with Angular

Angular

Worked on an ASP.NET web application which is used by a property management company for managing inventory and tenants

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.