Hello,

I am Santiago Scavone

About Me

Ever since a young age, I have felt drawn to machines and technology; my first experience with understating them started when I started learning programming at around age 12. Therefore, choosing my career path in Computer Science was a no-brainer to me.

Fast forward a couple years into the future, I was able to graduate magna cum laude in Computer Science at Kansas State. I love to see well-developed systems and code that, by just looking at it, you instantly get what is going on and think, "What a clever way to do this.". I am confident that, with time and effort, I will be able to build what I love to see. My goal is to master my "Computer Science" skills while gaining helpful experience that will let me take on more complex projects in the future. I want to do this one perfect line of code at a time.

Experiences

Computer Science Degree

Kansas State University
08/2017 - 05/2021

Going to K-State to study Computer Science was a great experience in many ways. Not only did I learn a lot of things (my skill section would not have been what it is otherwise) and experienced many challenges that helped me grow professionally and personally, but also I had a great time doing so!

My career at K-State was mostly focused on general Computer Science concepts instead of a single area. We started with basic topics like Data Structures and Logic to more advanced ones such as Algorithm Analysis and Distributed Systems.

All in all, I met people that are now friends for life and learned a few lessons I will never forget.

TA & Math Grader

Kansas State University
08/2019 - 05/2020

People say you only really understand something once you are able to explain it to your grandma... or to some random college students.

In my experience there is some truth to that saying.

I was a TA in a Data Structures class and a Math grader in Discrete Mathematics. In both cases, I understood the subjects I had to grade or teach much more deeply than I did when I was the one taking those clases.

Backend developer

Konecta
07/2020 - 08/2020

Although brief this was a very important experience for my career.

It was my first exposure to a real life scenario of a relatively big software project. I was able to experience how it felt to work in teams. Things like documenting everything you do were new to me.

I must admit though, that I only truly understood everything that was going on after I was finished with the internship. Postman is a good example of this, I knew what I should be getting, but not why or how.

Now I finally understand what Postman acomplishes and why developers use it at all.

Even with all my confusions as a newbie, I did well.

.NET Developer

Kansas' Department of Health
08/2021 - Present

My first "real" job. Quite the experience it was (and still is).

To summarize, I worked in the Kansas Grant Managment System that manages grants.

The system was already in place but it needed new features and needed tweaks on the stuff that was already out there.

That's where I come in. I work with the main developer to release these build these new features and I also talk with the stakeholders to get the requirements right.

It is fair to say that the developer side doesn't always align with the stakeholder side. But we manage to make it work everytime!

As for the technical side, I was basically a Full Stack developer. Using ASP.NET to build both the frontend and backend.

Skills

Frontend

Background

Most of what I learned about Frontend development was self-taught. In order to make some small projects and university projects come to reality, I had to learn the basics of HTML & CSS before scaling to more complicated tools like React and Vue.js.

Tools

  • HTML & CSS
  • React.js & React Native
  • Vue.js
  • ASP.NET Webforms
  • Figma (for mockups)

Backend

Background

Similar to Front-end, most of what I learned about backend comes from the projects I did. My first exposure to server backend development started in my internship.

I started to truly understand server backend programming when I did a class project that required me to build a RESTful API that connected a Frontend app with an Postgres database.

On my day to day job I am also required to do backend work in a .NET site.

Tools

  • Node.js
  • Express.js
  • .NET

Databases

Background

My knowledge in relational databases is strong, at least at a junior level. I know the basics of store and retrieve data from relational databases as well as the theory behind database architecture (Normalization). How to make more advanced queries and how the lookup system works.

My knowledge in non-relational databases is not at its peak yet. I must admit I do not have a lot of experience with them. But, I did learn about Amazon DynamoDB on a course I took. I know how the lookup system works, how to make queries and I can recognize the advantages of Non-relational databases over relational ones and vice versa.

Types

  • Relational databases
  • Key-Value databases

Tools

  • Postgres
  • T-SQL
  • Amazon DynamoDB

Cloud technologies

Background

The Amazon course Modern Application development on AWS opened my eyes to the power of the Cloud.

I understood the many advantages the Cloud has over in-house servers, as well as it many tools that can simplify developers' life while making applications hyper scallable. *insert unlimited power meme*

Tools

  • Amazon EC2
  • Lambda Functions
  • API Gateway
  • DynamoDB
  • VPCs
  • Load balancers
  • Many others!

Software Architecture

Background

Most of my projects relied heavily on Object Oriented Programming and the MVC architecture. There were a few times when I had to change gears and use more uncommon approaches like Functional Programming and such.

Other than just programming, I know about diagramming Software Systems too. I am familiar with common diagramming techniques such as UML and Entity Relationships.

Concepts

  • Object Oriented programming
  • Functional programming
  • MVC architecture
  • UML diagramming

Algorithm Analysis

Background

Algorithms analysis is a key topic throughout a Computer Science. Almost everything I know about algorithms is thanks to my classes. We went through logical analysis of algorithms to evaluating their efficiency (Big O).

We also did analyze common problems and different approaches the different approaches we can take to solve them from brute force to dynamic programming. Looking at how each approach can affect their time and space complexities and even how trading off the optimal solution can lead to significant improvements in those areas.

Software Testing

Background

Throughout my career at K-State, most of homework and projects were controlled using Unit testing and similar. That plus the fact that I took a Software Testing class teached me the foundations (and the quirks) of Software Testing

To my surprise Unit Testing and Integration Testing weren’t THE only way to test software.

Yet, the true value of testing was revealed to me on my first job.

Tools

  • NUnit
  • XCTest & XCTest UI

Concepts

  • Unit testing
  • Integration testing
  • Functional testing
  • Performance testing
  • Document testing
  • Test driven development

Concurrent Programming

Background

I never truly understood how parallelism worked in software until I took an Operating System class.

Yet, where I learned everything about Distributed Systems applications was on a university class. We learned how multithreading works and how to code it using various libraries. We also learned how to work with multiple processes. Thanks to Beocat (K-State Computer Cluster) we were able to take test our programs using more than 60 cores at a time distributed over many computers. It was amazing!

Tools

  • OpenMP
  • Pthreads
  • MPI

Data Analytics & Data Science

Background

I am fascinated by how systems nowadays manage data. That is why I have a special interest in Data Analytics and Data Science.

I took the Google Certicate in Data Analytics that introduced me to many useful concepts and techniques.

Additionally, I took an AI class in university that showed me algorithms used in Artificial Intelligence problems, as well as other interesting stuff like Machine Learning which totally got me hooked up with Data Science.

Tools

  • R
  • Tensorflow
  • Pandas
  • Numpy

People Skills

Background

I am known to be an easy-going and reasonable person by my family and friends. Meaning I don’t usually crumble at a lot of pressure and I’m usually in a good humor to deal with people. That makes me really good for team projects as I can always be calm in hard situations and communicate with people effectively and respectfully regardless of the team’s vibes.

Languages

  • English (Daily use)
  • Spanish (Native)
  • German (Basic)
Let's connect!