Profile picture

Drew Bradley

Software Developer
Pronouns He/Him
Open Resume Email Directly

About me

I am an experienced small business owner with a demonstrated history of working in the music industry. After years of running my own small business, I transitioned to programming so that I could better leverage my skills as an educator and administrator to reach more people. My work in software development has allowed me to use my creativity to solve problems that I previously thought of as being unsolvable. I am a strong business development professional with a Bachelor's degree from the University of Denver. I love music, food, and enjoying all of what Colorado has to offer!

Preferred locations

  • Denver, CO
Open to remote work

Previous industries

  • Entertainment
  • Events Services
  • Music
  • Primary/Secondary Education

Skills

  • Chrome
  • Git
  • GitHub
  • Google
  • Heroku
  • HTML5
  • JavaScript
  • Node.js
  • Npm
  • React
  • Redux
  • Sass
  • Travis
  • User Experience Design / UX
  • User Interface Design / UI
  • Visual Studio

Currently learning

  • GraphQL

Projects

CuraTour

CuraTour

Contribution time 40 hours
Collaborators Profile picture for Kristen Bair Profile picture for Richard Tyler Profile picture for Kevin Hartmann Profile picture for Phil McCarthy Profile picture for Robert Heath

Tools Used

  • CSS3
  • Git
  • GitHub
  • GraphQL
  • Heroku
  • HTML5
  • JavaScript
  • Node.js
  • Npm
  • React
  • Slack
  • Travis
  • User Experience Design / UX
  • User Interface Design / UI
  • Visual Studio

CuraTour is an organizational scheduling app designed for Tour Managers of traveling entertainers. It is designed to work across device types and sizes for ease of use throughout a busy day, and includes functionality while in offline modes. Each user belongs to an organization, every organization can manage multiple tours. Within each tour, events are scheduled. These events may be concerts, press events, interviews, travel days, anything relevant for the tour. Each event can have an agenda for the day - a schedule for various parts of the day (load-in, soundcheck, doors-open, meet and greet, etc). Users can also manage pertinent contacts through the app, and use the app to connect directly to their contacts. CuraTour is here to make your life easier, and to help the show go on.

Code Repository
Screenshot detail for project CuraTour
Screenshot thumbnail #1 for project CuraTour Screenshot thumbnail #2 for project CuraTour Screenshot thumbnail #3 for project CuraTour Screenshot thumbnail #4 for project CuraTour

Grouch Potato

Grouch Potato

Contribution time 40 hours
Collaborators Profile picture for Brian Forbes

Tools Used

  • Chrome
  • CSS3
  • Firefox
  • GitHub
  • Heroku
  • HTML5
  • JavaScript
  • React
  • Slack
  • Travis
  • Visual Studio

Grouch Potato allows users to browse today's top movies! Users can scroll through thumbnails of all movies, or use the search function to find a specific movie by title. When users click on a movie thumbnail, they are brought to a page that displays movie details about the specific movies.Grouch Potato is built with React and is controlled by seven main JavaScript files:- App.js contains all other elements and is the home of our BrowserRouter- MainDisplay.js displays the Header.js element and the grid that renders our Movie.js components.- Header.js holds our title, logo, and search elements.- Movie.js contains the thumbnail of the movie poster and allows users to click on the movie to see more details. It also contains a hidden element that allows screenreaders to display the title, without it being rendered outside of the movie poster.- IndividualView.js individual view displays detailed information about a movie, but showing a still from the film, and containing the Footer.js.- Footer.js footer renders the data associated with the film and confirms that there is data available before rendering.- Error.js contains the message that is displayed when a user encounters an error.

My areas of focus:
- React- Fetch API- HTML- CSS

Launch the App Code Repository
Screenshot detail for project Grouch Potato
Screenshot thumbnail #1 for project Grouch Potato Screenshot thumbnail #2 for project Grouch Potato Screenshot thumbnail #3 for project Grouch Potato

Song Starter

Song Starter

Contribution time 20 hours
Collaborators Profile picture for Greyson Elkins

Tools Used

  • CSS3
  • HTML5
  • React
  • Travis

Starting a new song can be hard. Your lyrics feel uninspired. You keep falling into the same chord progressions. It's too hard to be original. Let the app do the work for you.Song Starter is a revamped version of the 'Songwriter App' that utilizes React as well as the TonalJS and HowlerJS library. Using a single audio asset and HowlerJS's 'sprite' function I was able to utilize midi integers to trigger the notes associated with each chord. PoetryDB returns a poem, but only displays the first four lines. Users are also able to save songs that will persist through the page being reloaded due to localStorage being utilized.

My areas of focus:
- Music tech- Tonal.js- Howler.js- React- Cypress.io- TravisCI

Launch the App Code Repository
Screenshot detail for project Song Starter
Screenshot thumbnail #1 for project Song Starter Screenshot thumbnail #2 for project Song Starter Screenshot thumbnail #3 for project Song Starter Screenshot thumbnail #4 for project Song Starter

Monstronomicon

Monstronomicon

Contribution time 40 hours
Collaborators Profile picture for Elsa Fluss

Tools Used

  • CSS3
  • HTML5
  • JavaScript
  • React
  • Redux
  • Visual Studio

You're a Dungeon Master running a game in 5e and you're planning an encounter. How do you keep track of all the monsters you're throwing at your players? The Monstronomicon is here to solve this one specific problem.In the Monstronomicon you can search for your favorite monsters by name, or you can filter all 332 SRD monsters by challenge rating. Choose a monster and read its stats - if you like what you see, add that monster to your ongoing Encounter. When you're done adding monsters to your Encounter, view the list of everything you've added. Take a screenshot and send it to your players to make them sweat. Then remove a few of the monsters; you're not evil.This app was built in one week during mod3 at Turing to this spec. We chose to learn Redux and continue building on our knowledge of React, Cypress, and React Router. We chose the dnd5e API and focused on the monsters endpoint.When we started this project, our MVP was "Display and search monsters from the API". As we got more comfortable working in Redux, we realized that there was so much more we could do. We added the filter functionality and then created an Encounter. Creating the encounter didn't feel useful without being able to save it beyond page refresh, so we implemented localStorage. Once that was working, we turned the app into a PWA so that it could be run outside of a browser. As a taste of future enhancements, we added a counter to the Encounter button that updates as soon as monsters are added to or removed from the encounter.

My areas of focus:
- React- Redux- Fetch API- Cypress.io- Chai/Mocha- Heroku

Launch the App Code Repository
Screenshot detail for project Monstronomicon
Screenshot thumbnail #1 for project Monstronomicon Screenshot thumbnail #2 for project Monstronomicon