SAMUEL JONES

About me

A picture of Samuel Jones

hi, i'm

SAMUEL JONES

I'm a software engineer recently laid off from Flexport and a recent Computer Science graduate from Louisiana State University looking for employment. My goal has always been to broaden my knowledge as much as possible in various subdisciplines while still focusing and diving deep on my core career areas. [more about me]

Some of the most significant ways I have broadened my horizons are by pursuing a mathematics minor, a robotics minor, a CxC distinguished Communicator Medal, and an Honors Thesis. All of these goals have their own set of challenges and have contributed towards each other as I have been able to apply skills I learn in one area to others.

Full Stack

Through both my projects and professional experience, I have developed many full stack skills. I enjoy the wide range of challenges it brings, and the chances to learn many new technologies, from databases, to APIs, to UI design and implementation.

Education

Through my degree (with CxC , class projects, lab work, etc.) I have been able to develop soft skills such as communication, leader­ship, and teamwork, as well as additional technical skills such as problem-solving and software architecture design.

Other Areas

There are many other areas of software engineering that I make efforts to develop skills in, including robotics, data analysis, and embedded software. Although the majority of my experience is full stack, I am always want to expand my knowledge and experience in these other areas, as they are all enjoyable to me.

Selected Work Experience

Flexport logo

Flexport Full Stack Engineer

Continually contributed towards improving financial systems visibility, auditability, consistency, and performance.

In my brief time at Flexport I was able to contribute towards the reduction of trucking overcharge by over 50%. I first improved back-end integrations our procurement database. This allowed for better and stricter invoice validations on the frontend and backend, resulting in the number of charges with bad rates to be reduced from over 60% of all charge to under 15%.

Aside from general frontend and backend tasks, I was able to contribute in designing systems and analyzing data as well. I designed and implemented an end-to-end document upload system which would allow for proof of charge document requirements. Just as well, I developed queries for an analytics dashboard to assess invoicing accuracy and leakage using Snowflake. I also participated in the data analysis from the dashboard to identify critical areas of overcharge.

My experience as a software engineer at Flexport, however short, was valuable in allowing me to experience the fast-paced environment of a software engineer and the expectations that come with that. I was able to learn a lot about the software and freight forwarding industries, as well as have a more impactful role than I could have had in my internship. As a full time software engineer, I had to not just learn and implement things with minimal guidance, but make impactful design decisions and communicate with stakeholders to ensure the best possible outcomes.

On the technical side, I learned much more about all the technologies involved: React, Ruby, Rails, GraphQL, Apollo, PostgreSQL, Snowflake, S3, and more. It amazes me just the difference one year since my internship makes in my ability to understand and implement these technologies, and I am excited to see how much more I can learn in the future.

Technologies: React, JavaScript, Flow, Ruby on Rails, GraphQL Ruby, Apollo Client, PostgreSQL, Snowflake, S3

Flexport logo

Flexport Full Stack Intern

Developed Jira-integrated support feature with industry technologies including React and Ruby on Rails.

During this internship, I owned a support form integration feature end-to-end, heavily refactoring the feature in one application and adding an implementation in another, allowing better user experience and reduced complexity when modifying the support form.

Through this internship structure, I was able to better myself as a software engineer both in my personal skills and as part of a team. I participated in daily and weekly SCRUM meetings, organized communications between stakeholders of the support feature, and efficiently gather requirements and recommendations for the feature.

Simultaneously, I was able to learn and operate mostly autonomously on a day-to-day basis, learning new technologies and developing the support feature, with my teammates and manager answering any questions if I became stuck.

Technologies: React, JavaScript, Flow, Ruby on Rails, NextJS, GraphQL

Hear about my experience
Nasa Meatball Logo

NASA Software Engineer Intern

Created analytics dashboards to aid in process improvement using technologies such as Jupyter and Pandas.

The focus of this internship was to develop two internal tools to aid in process improvement and budget forecasting for organization executives at NASA Technology Transfer. My manager did not have experience with software development and was simply the stakeholder from which I got feedback about the performance and ease of use of the tools.

Although this structure made it difficult to clearly ascertain requirements at times, it significantly helped me develop my software development skills precisely because of that. It also allowed me to develop skills of learning on the fly, as many of the technologies used in the dashboards I was unfamiliar with at the time.

For the conclusion of this internship, I had to present my progress and acheivements through an organization wide presentation. Here I was able to use my skills developed from previous Communication Intensive courses at LSU such as my introductory Honors course or my Object-Oriented Programming course. These, combined with the feedback I got from supervisors and colleagues, led to me to have a very successful closing presentation and satisfactory conclusion to the internship.

Technologies: Python, Anaconda, Jupyter Notebook, Pandas, SQLite, Plotly

Louisiana State University logo

LSU iCORE Lab Research Assistant

Developing computer vision systems to allow for underwater navigation and post-mission 3D reconstructions.

Working towards development of a research project such as this has both allowed me to contribute meaningfully towards the development of autonomous robotic systems, but also develop learning, presentation, technical reading, and technical writing skills through the process of my thesis and with the help of my thesis director and lab supervisor.

Technologies: ROS, OpenCV, Python, NumPy, C++

Featured Projects

Screenshot of stare into the void dot com

Stare Into The Void

Website allowing user to browse through images from NASA's official image APIs

This project was developed in a 5 person group as part of CSC 4243 Interface Design. The purpose of this project was to develop a good user interface for some software of our choosing by going through various rounds of user testing and using that feedback to iterate on the design. My role in this project was leading development of the front-end code for the home page and browsing, as well as managing the continous integration pipeline with GitHub flow version control strategy.

Through the development process, users tested the software through series of interviews, surveys, and observations. This allowed us to witness users using the design and get their direct feedback to apply to the design iterations. For this project we chose to use NASA image APIs as a data source as that allowed us to not have to worry about developing a backend and focus more on the GUI itself.

Technologies: React, React Router, TypeScript, TailwindCSS, Firebase (Hosting & Cloud Functions), Figma

Screenshot of Clairvoyance

Clairvoyance

Web tool to allow for the planning of smooth paths for usage in autonomous robotics.

The motivation behind this project was to help the high school robotics team I was mentoring plan their autonomous paths for thei competition robot. I also wanted to try my hand at making a desktop application not using Electron. In addition, I wanted to try out Rust and gain a deeper understanding of the path-planning algorithm used in WPILib, which all coincided into me making the app in Tauri.

The challenge of creating an extremely functional but visually appealing UI is always a fun one to me, as it offers one of the best stages to test one's UX chops. Although the project is fairly simple now, I plan to continue to develop it, as it allows me to explore a lot of different technologies and concepts I am interested in.

Technologies: Svelte, TypeScript, TailwindCSS, Tauri, Rust, Java, SpringBoot, Figma

Screenshot of Google Font Box

Google Font Box

Personal project to help myself and other developers pick their next fonts and color scheme.

For this project, I wanted to prioritize learning a new web framework as well as making something I could use in future projects. I tend to use Google Fonts a lot for various projects, so I wanted to try to develop a better interface to try them out than the one provided by Google.

I decided an up-and-coming technology like Svelte would be a good choice due to its rapidly rising popularity and continued praise from its community. So, from there, I worked to create a simple web-based tool to help developers like me pick fonts and color schemes.

Technologies: Svelte, Sveltekit, TypeScript, Bulma, SCSS, Google Font APIs

Picture of a result of running a pathfinding algorithm Picture of a result of running a sorting algorithm

Algorithm Visualizer

Simple website to created as a way to better understand sorting algorithms.

The goal of this project was to gain a better understanding of common computer science algorithms and of Javascript as a language. I wanted to develop a more intuitive understanding of these algorithms so that I could better apply them when needed, so I decided the best way would be to implement them for myself and develop a visualization scheme in the process.

I was also worried that in my studies I was focusing too much on Javascript in the context of frameworks and libraries, and so had a goal to develop this with entirely vanilla Javascript. This was so I could better understand the language and event-driven programming in general.

The result was a painful but crucial leap in understanding of both computer science algorithms and Javascript, as well as a lightweight application to visualize sorting and pathfinding algorithms.

Technologies: HTML, CSS, JavaScript, Bootstrap

Leadership Experience

Flexport logo

FRC Team Mentor

Mentoring rookie robotics team 8044 in programming and electrical skills since 2019

Since 2019, I have mentored FIRST Robotics Competition Team 8044 Denham Venom from their inception, teaching students various programming and robotics skills and leading them through applying these skills to their competition robots, even winning an Autonomous Award at the 2022 Tallahassee Regional event.

As I recently moved, I am no longer able to mentor the team, but I am still in contact, and have begun mentoring team 7461 Sushi Squad in a similar capacity.

Columbus List home screen

CSC 4330 Project Group Leader

Acted as team leader and lead front-end developer for the 6 person semester long website development project for CSC 4330 Software Systems at LSU

As a team lead I was responsible for the organization and project management of the project. I was able to keep the group members on task and clearly define their roles and responsibilities, while also organizing meeting and project management software for the team.

We used GitHub projects as a project management software, and at weekly meetings we would close old tickets then create and assign new ones. I also drafted milestone reports which would then be reviewed and edited by the team members.

The Last Cake on Earth menu screen

CSC 4263 Project Group Leader

Acted as team leader, lead website develop, animation developer, and weapon systems develop for the semester long game development project for CSC 4263 Video Game Design at LSU

The most important aspect of this project from a project management perspective is communication between the team members. Due to the fast paced nature of game development, without good communication, heavy refactoring and bug-fixing could be needed for what should be simple feature merges.

For this, we decided to use Trello as our project management software which allowed us to easily visualize everyone's progress in a glance. Also, biweekly progress meetings were set up to coordinate development of assets, the game world, and scripts. Finally a version control strategy known as GitHub flow was implemented which allows each person to work independently and any changes to be rectified by both parties whose code conflicts.