David A. Powers

David A. Powers: Full Stack Web Developer

Skills

  • PHP: Laravel, Lumen, Codeception, Wordpress
  • JavaScript: Vue, React, NodeJs
  • Python: Django, Pygame, Pynum
  • Ruby: Ruby on Rails, Sinatra, Rspec, Jasmine, Cucumber
  • DB / NoSql: MySql, PostgreSql, Redis, MongoDb, GraphQL
  • AWS: Lambda, Redshift, Kinesis Firehose, Elasticsearch, CloudFront, S3, EC2
  • Agile: BDD/TDD, Continuous Integration, Pair Programming, Scrum
  • E-Commerce: Shopify, Woo-commerce, Magento
  • Other: CSS3, HTML5, ActionScript 3

Clients & Brands

  • Antietam
  • Blue Cross Blue Shield Assoc.
  • CPURX
  • Digital Bootcamp
  • Effen Vodka
  • First Nonprofit Insurance
  • Forum Coworking
  • Imagine Detroit
  • Jim Beam Global
  • Oi Furniture
  • Prima Dora
  • Sauza
  • Skinnygirl
  • Star Wars / Lego
  • The Oasis on Lake Travis

Expertise

I have over 10 years experience as a full-stack web developer and software engineer. I build robust, scalable, well-tested applications in JavaScript, Ruby, PHP, and Python and other open-source languages. My primary focus is has been on building custom content management systems. I have also worked on high-traffic e-commerce platforms, e-learning applications, push notification systems, ad platforms, payroll software, CRM software, custom API's, API integrations, and 2D computer games.

I'm an advocate for agile and XP based approaches to software development. I have a strong understanding of TDD, BDD, Continuous Integration, functional and OO design patterns (SOLID), and distributed system architecture.

Current & Recent Projects

Moodflo Mental Wellness App

Moodflo is an SPA built in React on top of a Laravel API. The application is in Alpha stage currently.


Vue 3 Audio Player

I wanted to add an audio player to my website, so I decided it was a great opportunity to try out the latest version of Vue-CLI, and play with Vue 3. I'm hoping to make some improvements and experiment with the Vue 3 Component API soon. You can see the audio player running in the upper right corner of this website!

View the code on Github >>>


Invaders from Beyond

The Invaders from Beyond project started with some sketches of an algorithm for generating retro 8x8 pixel art aliens. Inspired by games like Space Invaders and Galaga, I wanted to make an old school arcade game with infinite level progression. I wanted a game my friends could play on the web, so I created a browser based HTML game using the Phaser 3 JavaScript game framework.

Play Invaders from Beyond >>>

Career Highlights

PushMonetization.com

I was the sole developer for a Push Notification system that included a dashboard built with Ruby on Rails, a message queue (RabbitMq), a client side service worker utilizing asyncronous JavaScript, NodeJs, and AWS technologies for scaling such as Redshift, Lambda, Cloudfront, and Kinesis Firehose.

Liquid Thread

While freelancing at Liquid Thread, I worked as a full-stack developer on several major corporate websites, including Jim Beam Global, Sauza Tequila, Effen Vodka, and Skinnygirl. All these sites used a custom Ruby on Rails CMS along with front-end JavaScript libraries including Backbone, Handlebars, and CoffeeScript.

AskBlue Medicare / AskBlue Federal

I was the sole full-stack and interactive developer on the AskBlue projects while working with Sandstorm Design as both employee and contractor. I created an ActionScript 3 game engine with branching choose-your-own adventure logic (a directed acyclic graph) and synchronized audio and animation for the front-end. The client had requested that we run the app on Microsoft servers, so on the back end, I used PHP with the Kohana framework, and a Microsoft SQL database. I created a full back end reporting and analytics engine, and also ported parts of the game engine to PHP, which gave us the option of creating a version of the site that screen readers could access.

My Story

My involvement with programming started as a child. My dad loved computers and I followed in his footsteps. They used to publish magazines with programs written in BASIC that you could type in and run yourself, and it was here that I received my child hood education in programming. This led to my first technology triumph. In 1985, at the age of 10, I coded a primitive version of Space Invaders. It ran on the family Texas Instruments TI-994A, which was a glorified video game console that included a built in keyboard and the BASIC programming language.

As I grew up, I developed a passion for playing jazz and writing poetry. In the nineties, after studying Music Composition and English in college, I explored ways to combine art and technology. I coded Python scripts to algorithmically generate source material for my musical compositions. Other scripts from this time wrote weird surrealist poems.

Around 2000, I began working with web-based languages and technologies, such as HTML, JavaScript, PHP, and ActionScript Flash. I built music artist websites, MP3 players, and 2D Flash video games. I realized that if I continued to learn and grow, there were no limits to what I could code. As my skills developed, I took on freelance projects.

Finally, in 2007, I went looking for a job as a full time web developer. And thus it was that my career as a software developer began.