About me

I am a resourceful Computer Science Major with a Mathematics Minor with extensive leadership experience and 8+ years of experience in a team-oriented environment. In these team environments, I love to take initiative to lead in projects. As someone who was a team captain on the high school varsity basketball team and in my university intramural basketball team, I lead my team by example and effective communication. Just as effective communication was key to coordinating plays on the basketball court, I now leverage this skill to lead teammates in coding projects, ensuring we achieve our objectives efficiently.

This experience has carried on and transitioned into my coursework, where I have developed a strong work ethic and currently have a 4.00 at my university, while working part-time as a boba barista and cashier. As a proactive individual, I utilize my time outside of school to create numerous side projects, showcasing my commitment to furthering my knowledge and skills in the field of computer science. Through disciplined work habits and a burning passion for what I do, I strive to bring my creativity, analytical mindset, and unwavering determination in the field of backend and full-stack development.

Major skills

  • design icon

    Backend development

    Spring Boot Express.js Node.js Flask Django ASP.NET Core
  • Web development icon

    Database management

    SQL Server PostgreSQL MongoDB Firebase Redis DynamoDB
  • mobile app icon

    Cloud Services and Devops

    Docker GitHub Actions Unit Testing Integration Testing AWS EC2 AWS Lambda
  • camera icon

    Frontend development

    React.js Angular Vue.js MaterialUI Bootstrap

Testimonials

  • Daniel lewis

    Brandon Hawi - Software Engineer at First American Title

    Michael employs a willingness to learn which exemplifies a passion for software engineering and development, setting him apart from other software engineers that I have previously worked with. Michael began the internship program at First American with little experience in web development, databases, or the business domain of title insurance. However, in less than 8 weeks time, Michael developed a Users page for one of our internal applications which allowed us to perform full user administration from the application itself, and did so with work completed on all parts of the web stack. In addition to learning basic web development concepts he learned C#, JavaScript, and SQL in order to complete all this work. It is quite evident that Michael has a true passion for learning about software development and takes joy in the little wins that software engineers experience every day when overcoming a difficult challenge. Overall, Michael would be a great addition to any engineering team, and I cannot wait to see what the future holds for him.

Other skills

  • design icon

    Mobile app development

    Android

  • design icon

    Data Science and ML

    Pandas Map reduce Sklearn Numpy

  • design icon

    Game Development

    Pygame

  • design icon

    Network programming

    Socket.io

Resume

Education

  1. El Dorado High School

    2016 — 2020

    GPA: 4.67

  2. California State Polytechnic University, Pomona

    2020 — 2024

    GPA: 4.00

Experience

  1. Software Engineer Intern

    First American Title

    June 2022 — August 2022


    Developed frontend with React.js and backend with C# for the internal web application (NCS2.0) used by the DataTrace Client Services team to support 10,000+ customers using DataTrace System 2.0

    Built a RESTful API using ASP.NET Core that utilizes Azure Active Directory as an identity provider to authenticate and authorize users, based on OAuth2 Implicit Grant flow

    Created 16 CRUD stored procedures for the API to execute using Microsoft SQL Server, which made the deployment process faster and optimized the API response time compared to using dynamic SQL

    Implemented Role Based Access Control, where the API authorizes user access on the page by adding custom role claims retrieved from the database based on the user's email on the ID token, to the access token

    Reduced time required to perform full user administration from 1 hour to less than a minute, by creating a users and roles page from the application itself, transitioning from submitting a Wrike ticket to add user access to the security group on Azure AD

    Worked in an Agile environment, such as having daily scrums and utilizing user stories and sprints on Azure Boards to track work

  2. Senior Project: Autonomous Trash Disposal with SPOT Robot

    Feb 2023 — May 2023


    Trained SPOT Robot using TensorFlow to autonomously detect trash, pick it up, and drop it in trash bins around campus as a team of 5

    Implemented an algorithm using OpenCV for the SPOT robot to navigate towards the identified trash and pick it up

  3. Team Member

    April 2022 — Present


    Maintaining high standards of customer service and making quality food and drinks during high stress environments

    Prepping food, drinks, and cleaning kitchen during down time

    Trained 2 new team members on preparing drinks and food

Languages

  • JavaScript
    85%
  • Java
    70%
  • Python
    70%
  • Golang
    50%
  • Kotlin
    50%
  • C/C++
    40%

Portfolio

  • IMDb Clone: Movie App

    Web development

    This web app gives users the ability to favorite, rate, filter, and search movies, while also implementing AWS Lambda and DynamoDB TTL to send reminders via SMS for movie releases in theaters. Additionally, JWT Authentication and Redis caching were implemented, leading to an 80% reduction in response time for user data. It also has a movie stats page that updates in real-time, which utilizes server-side events.

    MongoDB Express.js React Node.js Redis AWS Lambda DynamoDB
  • Bronco Marketlpace

    Web development

    In this project, I led a team of 2 developers following Agile methodologies to create a customized online marketplace exclusively for Cal Poly Pomona students. The platform enabled easy buying and selling of items and services, with real-time messaging and secure school-specific email authentication, while implementing a CI/CD pipeline using GitHub Actions, Junit, and Mockito for automated testing and deployment on an EC2 instance using Docker for scalability. While leading the project, I fully developed the frontend and helped with the backend.

    Spring Boot Kotlin Firebase EC2 Docker TypeScript Angular CI/CD Unit & Integration Testing
  • Senior Project: Autonomous Trash Pickup

    Web development

    As part of a team of 5, our goal was to make SPOT more autonomous, where we chose to address the issue of littering on campus. Our group trained SPOT to autonomously look for trash, pick it up, search for the nearest trash bin, and then drop the trash in the bin. My role was implementing the algorithm using OpenCV for the SPOT robot to navigate towards the identified trash and pick it up

    Python OpenCV TensorFlow
  • Mini Twitter Clone

    Web development

    This mini Twitter clone project includes functionalities for users to follow others and post tweets with real-time newsfeed updates. The system is designed with various design patterns, such as Singleton, Observer, Visitor, and Composite, to ensure code reusability and extensibility. It includes a centralized admin control panel allows the creation of users and user groups, and it provides analysis features like displaying the total number of users, groups, tweet messages in the news feed, and the percentage of positive tweet messages containing specific positive words.

    Java Swing Design Patterns
  • Panda Express Survey Automator

    Web development

    This web app automates the process of filling out the Panda Express Survey Form using Selenium, benefiting over 2000+ students at Cal Poly Pomona and others. By eliminating the need for manual survey completion, it significantly reduces the time to get a redemption code for a free entrée, making it more efficient and convenient for daily diners. The deployment on render.com using Docker and Nginx as a load balancer further ensures smooth performance and handles static assets seamlessly. I posted a demo of it on TikTok, where it recieved over 800,000 views.

    Python Flask Selenium Docker
  • Multiplayer Pokemon Typing Game

    Web development

    A fun and interactive web-based game developed with two game modes for my younger sisters, Co-op and Battle. Using WebSockets, the game synchronizes the state and logic, allowing players to engage in multiplayer sessions and join different game rooms. In Co-op mode, two players collaborate to catch Pokémon together, while in Battle mode, two players compete against each other, racing to type the Pokémon name before their opponent. This educational game not only provides an enjoyable experience but also helps younger players improve their typing skills in an engaging and entertaining way.

    Node.ts TypeScript Vue.ts
  • Study Room Scheduler

    Web development

    The Study Room Scheduler is a program designed to automate the process of booking optimal, available study rooms for the next day. Utilizing a greedy algorithm based on room size, allotted time, and other factors, the program runs a daily cronjob at midnight to ensure seamless and efficient scheduling, relieving users from the need to manually book study rooms every day. I posted a demo of it on TikTok, where it recieved over 14,000 views.

    Python Selenium GitHub Actions
  • 3x3 Sliding Puzzle Solver and Game

    Web development

    The 3x3 sliding puzzle solver and game utilizes the A* search algorithm to find the shortest number of moves required to solve the puzzle. The implementation includes a user-friendly GUI built with Pygame, providing a visual representation of the board during the solving process, enhancing the user's experience and interaction with the game.

    Python Pygame A* Algorithm
  • AI Solves Snake Game

    Web development

    This project is a snake Game is a where the user can choose to have the snake moves autonomously, powered by the Breadth-First Search algorithm. Users can adjust the board dimensions, and the game offers the ability to restart when the snake dies. To control the snake's movement, players can use the arrow keys on their keyboard.

    JavaFX Breadth-First Search
  • PDF Bookmarker

    Web development

    Amidst the challenges of learning and reading textbooks in online PDF formats during the COVID-19 pandemic, I created the PDF Bookmarker Chrome extension as a tailored solution for students. This extension empowered over 500+ college students to easily title and bookmark pages in their PDF textbooks, providing them with a user-friendly tool to overcome the difficulties of navigating and organizing digital materials, ultimately enhancing their learning experience and making education more accessible.

    JavaScript HTML CSS
  • Pomona Transit System

    Web development

    The Pomona Transit System is a Java-based application implemented using JDBC and SQL, to handle various transactions such as displaying and editing schedules, adding and deleting buses, drivers, etc. I utilized ERwin to create entity-relationship diagrams for planning, ensuring schema flexibility and normalization, resulting in a well-structured database capable of handling various transactions with efficiency and data integrity.

    Java SQL SQL Server JDBC

Blog

Contact

Contact Form