Michael Hays, Software Developer in Dallas, TX, United States
Michael Hays

Software Developer in Dallas, TX, United States

Member since May 10, 2019
Michael has been freelancing professionally for six years. He builds applications primarily for startups and small businesses and has a deep entrepreneurial spirit. He enjoys thinking through the business logic and high-level architecture of an application, as well as buckling down and coding for twelve hours straight. Michael has consulted two Norwegian startups and has the experience to be a highly effective remote team member.
Michael is now available for hire




Dallas, TX, United States



Preferred Environment

GitHub, Visual Studio Code (VS Code), Linux

The most amazing...

...FOSS project I've built is a website to help Texans select an energy provider.


  • Chief Technology Officer, President

    2016 - PRESENT
    Awesome Power, Inc.
    • Developed a website to calculate the cheapest retail electric provider for Texas consumers based on their electricity usage data.
    • Collaborated with the Public Utility Commission of Texas to improve the state website for energy data access, Smart Meter Texas.
    • Integrated with the Smart Meter Texas API to manage user profiles on the site.
    • Built a predictive model for future electricity usage using a Scikit-learn RandomForestRegressor.
    • Presented our findings on the inefficiencies in the electricity market to energy clubs, and organizations.
    Technologies: Heroku, PostgreSQL, Django, Vue
  • Front-end Developer

    2019 - 2021
    PepperEdge, Inc dba Pepperlane
    • Created a fully editable WYSIWYG profile editor to showcase the businesses and services of Pepperlane customers.
    • Developed a tool to help female business owners create posts on social media.
    • Worked extensively with multiple designers to convert their Figma and Sketch designs into pixel-perfect applications.
    Technologies: Vue, Ruby on Rails 5, PostgreSQL
  • Lead Developer

    2018 - 2019
    Off Market, AS
    • Developed the back end for a proptech mobile app to connect potential buyers to potential sellers of residential real estate.
    • Directed a technical team across three time zones; United States, Oslo, Sweden, and Novosibirsk, Russia.
    • Monitored, and instructed the React Native integration with the back end API.
    • Worked directly with a web design agency to build a property preview for those without the mobile app.
    • Converted Webflow code into Native Vue code, adding transitions, and animations.
    Technologies: Firebase, Kubernetes, Google Cloud Platform (GCP), PostgreSQL, Vue, Django
  • Lead Developer

    2018 - 2019
    Banduro, AS
    • Led the development of a Norwegian chatbot management platform.
    • Designed a conversational data model to allow for arbitrary functionality to be executed at certain points in the chat.
    • Built an intuitive dashboard to allow non-technical users to create complex chatbots with ease.
    • Deployed the back end, and custom NLP vector spaces on GKE.
    • Integrated, and managed customer payments using Stripe.
    Technologies: Firebase, Kubernetes, Google Cloud Platform (GCP), PostgreSQL, Vue, Django
  • Code Mentor

    2015 - 2017
    Udacity, Inc.
    • Reviewed student submissions for program correctness, and code styling.
    • Built a Chrome extension that allowed reviewers to automatically assign projects to their review queue when available.
    • Collaborated with the community to improve the reviewing process, and remove inefficiencies by integrating a tool for pre-written content injection.
    Technologies: CSS, HTML, JavaScript, Python


  • Chatbot Logic Injection

    Banduro is a chatbot management platform that allows non-technical users to create their own chatbots and deploys them on their business webpage.

    I designed an "injection" process, which allows a chatbot to be dynamically loaded into an iframe in the user's website.

    To make this work, the user needs to copy and paste two <script> elements to the webpage where the chatbot would run: One <script> with the ID of the chatbot, and another <script> with the logic to load that particular chatbot (linked above).

    The business webpage and the iframe communicate through the window.postMessage API, which allows each to know 1) when the chatbot iframe DOM element has loaded, 2) when the chatbot data model has been injected into the iframe, and 3) when the user opens or closes the chatbot.

  • UrPlus

    urPlus is a collection of tools to enhance the Udacity reviewer and mentor experience, including integrated remark storage, and retrieval.

    I initially created the tool for my own personal use, but later released it publicly under the GPL-3.0 when I realized how useful it could be to the Udacity review community.

    Within one month, the Chrome extension had over 120 downloads, which accounted for nearly 1/3 of all reviewers. In 2017, I moved on from the reviewing community, and transferred the project to another reviewer. I am still incredibly proud of how much it continues to help my fellow reviewers.

  • Smart Meter Texas Contested Case

    In 2017, I was involved in a contested case over the business requirements of Smart Meter Texas (SMT), which is a website used to store and retrieve energy usage data for Texas consumers.

    Awesome Power Texas, which is a small business I began building in 2016, uses the data from SMT to determine the ideal electricity plan for Texas consumers through a predictive usage model.

    End users and third parties were having trouble navigating the SMT web portal as well as initiating data access agreements, so the Public Utility Commission of Texas launched a contested case to improve the platform.

    I participated by submitting a proposal on how to redesign pieces of the application at a high-level, in ways that would ease the registration and third-party integration process. In particular, I designed a better authentication system, which involved a secret key delivered to each energy consumer, and provided the security mechanism, which was absent in the original website.

  • Power to Choose Plan Term Collection

    Power to Choose is the state-run website for choosing an electricity plan in Texas. One major shortcoming of the website is that it only shows the expected cost for each plan at three cutoff points: 500 kWh, 1,000 kWh, and 2,000 kWh.

    This means that the vast majority of the plan terms are unknowable without looking through every Electricity Facts Label (EFL) directly, of which there are hundreds. My website, Awesome Power Texas, collects the EFLs from Power to Choose, analyses the PDF text (either directly or through OCR), and creates a model of the entire range of the plan.

    This is necessary to calculate the expected plan cost for a particular user, using their actual historical usage data. To store the information ascertained from the EFLs, I mapped each plan as a piece-wise function of charges (flat fees), and rates (applied per kWh), and stored this information as a nested array in our Postgres database.

    The attached code demonstrates how we use that information to calculate the plan's cost at any usage level, and not just the cutoffs provided by Power to Choose.


  • Languages

    Python, JavaScript, HTML, CSS
  • Frameworks

    Tailwind CSS, Django, Django REST Framework, Nuxt.js
  • Libraries/APIs

    Vue, Node.js
  • Tools

    GitHub, Git, Postman, Figma, CircleCI
  • Paradigms

    Web Architecture
  • Platforms

    Heroku, Linux, Netlify, Google Cloud Platform (GCP), Amazon Web Services (AWS), Kubernetes, Docker, Visual Studio Code (VS Code), Firebase
  • Storage

    PostgreSQL, Redis
  • Other

    Architecture, SaaS, GitHub Actions


  • Bachelor's Degree of Science in Mechanical Engineering
    2011 - 2016
    The University of Texas at Austin - Austin, TX

To view more profiles

Join Toptal
Share it with others