Dashboard


Welcome to my portfolio!

Navigate to a page using the dashboard menu

Who Am I?

My name is Alexis Contreras. I am a new grad with a bachelor's degree in computer science and am available for you!.

I have the most experience building cross platform mobile applications using multiple multiplatform frameworks and languages, I have strong object oriented skills with several years of C++ under my belt, and have an interest in graphics programming and game development.

Speaking of languages, I'm also bilingual! I know English and Spanish with professional fluency!

Check out my projects in the projects tab, or if you'd like more details about what languages I have experience in, take a look at my resume! Shoot me an email by heading over to the Contact Me page!
Thanks for checking out my site!

My Development Philosophy

There is nothing that makes creating software more efficient for the developers than having multiple "toolboxes" of libraries and plugins at their disposal; however, if they end up going offline, come with a plethura of bugs with the next update, or don't even support what you need them to, it can cost developers time, effort, and money to get around the issue.
This is why I develop my software with my own "toolboxes". When you create your toolboxes from the start of the development cycle:

  • It speeds up development by having all of the methods that you need for the specific project in one centralized location
  • It grows in utility with the software as it is being developed
  • Is open for modularity by being easy to add/remove functionality as needed
  • And is automatically creating a Separation of Concerns environment for the software!

A small time investment at the start can save so much more in effort in the long run. If you agree, why not get in contact with me by sending me an email in the 'Contact Me' page!

Image/Gif

Effit was a crossplatform fitness application that I made in a team of 5 people. We used Git for Version Control and GitHub Projects for assignment tracking. The framework we used was Flutter and the language was Dart. The feature that I worked on was the personal trainer aspect of it. Firstly, I had to create simple web apps to create, update, and modify the database of exercises and fitness routines in our Firebase backend. From there, I designed the pages using Google's Material Design guidelines. Custom expandable cards were used to display exercises and for showing a routine.

Image/Gif

Tomb of Adventurers was an Android companion application for the Dungeons and Dragons RPG Tabletop game. It was composed of a team of 4 people, and we used Git for Version Control. It was made in the Android Studio platform and written in Java. The app was meant to digitally replicate and streamline the character sheets for the game, including: creation, stats, inventory, and spells. I was tasked with the character creation section. How creating a character works in the game is that each race, subrace, class, and subclass has it's own specific attributes and have access to certain skills, abilities, and buffs that automatically apply to certain stats. From there, you can select any additional stats or abilities that you'd like, as long as they are selectable for your race, subrace, class, and subclass. This is obviously a lot of information to keep track of for one race and class, let alone 21. You also don’t want to have options that are not available to your desired race and class being listed in the selectable option fields either. So my approach to this was to create a class-like JSON file for every race, subrace, class, and subclass with all of the necessary information on attributes, skills, abilities, buffs, items, etc. and dynamically generate selectable options based off of the length of those contents. Check out the GitHub to learn more

Image/Gif

Picture This! was a multiplatform mobile application made using the Xamarin framework and C# language. The app was made in a group of 3 people, Git was used for Version Control, and GitHub Projects was used for assigning tasks and issue tracking. The app allowed the user to take or import a photo, add and remove tags, organize uploaded photos, and rate the imported pictures. The features that I worked on was the importing process. This meant that I had to access the phone’s gallery and also access the phone’s camera to take pictures. From there, I had to create the fields for the user to add and remove tags from a pre-generated list or add new tags, add location data, and give a title to the picture. I used a class to hold all the metadata that the user creates when importing a picture and used JSON Object Serialization to save the data and location to a JSON file containing an array of all the saved images. I also created a JSON file that had an array of all of the tags. Due to the nature of the plugins we were using for the project, we could not access the JSON files when they were created; to get around this, I decided to implement a black-box-style solution to this issue by creating a library to house all of the methods that we needed to access either one of the JSON files. This library was used by my teammates for their sections of the app. Check out the project on my GitHub!

Image/Gif

Spatuslap is a multiplatform mobile game that I am making in the Unity3D engine. The language that I am using is C#. The objective of the game is that there are one of two items falling from the top of the screen: vegetables or bugs. You use your trusty spatula on the bottom of the screen and tap to slap the vegetables to one side and the bugs to the other. You start out with your restaurant having a 5 star rating. The rating is based off of a point system. You lose points for every bug in the vegetable side or any vegetable in the bug side and your points and as you lose points, your stars go down. You win when you make it to the end of the timer and you lose when you have 0 stars. At the moment, that is the extent of the game. I am currently rewriting the game from the ground up to improve optimization and organization. The GitHub page for this game is not public, as I wish to share it when it is completed.

Contact Me!

Send me an email to get in touch!