Justin C Barrett

I am a

About

I am a Web Developer and WordPress Engineer with 12 years of experience in web technology. With a Master's in Instructional Design, Bachelor's in Music Education, and continuing education web technologies, I have a diverse background with varied interests and skills.

Web Developer & WordPress Engineer.

Skills

This section is dynamically populated by querying my profile on TeamTreehouse.com.

JavaScript

100%

CSS

95%

PHP

93%

HTML

86%

Design

84%

Python

84%

Java

83%

Security

79%

Development Tools

79%

Resume

Education

Continuing Education

2015 - Present

TeamTreehouse.com

Ongoing study in web technologies.

Master of Instructional Design & Technology

2012 - 2015

University of North Carolina at Wilmington, Wilmington, NC

Emphasis in instructional pedagogy and the use of technology to facilitate learning.

Bachelor of Music Education

2006 - 2011

University of North Carolina at Greensboro, Greensboro, NC

Emphasis on Percussion Performance and Educational Philosophy

Professional Experience

Director of Technology & Lead Developer

Manager of Development & Creative

Director of Development

Senior Developer

Junior Developer

2018 - Present

Autoshop Solutions, Apex, NC

  • Oversaw the planning and implementation of technology initiatives throughout the company.
  • Implemented projects to extend the capabilities and efficiency of company products
  • Developed themes and plugins for websites maintained by the national marketing agency
  • Managed a team of developers, designers, and multimedia specialists
  • Oversaw large and small projects for brand development

Ongoing Learning

Over the course of 9 years of continuing education, I have accrued 27345 points in 9 skill areas, earning 350 badges in the process.

Newbie
Beginning HTML and CSS
HTML First
Creating HTML Content
CSS: Cascading Style Sheets
Customizing Colors and Fonts
Styling Web Pages and Navigation
Adding Pages to a Website
Responsive Web Design and Testing
Sharing a Website
Debugging HTML and CSS Problems
Getting Started with CSS
Basic Selectors
Understanding Values and Units
The Box Model
Basic Layout
Designing with the Latest Features
Fundamental Concepts
Selectors - Beyond the Basics
Going Further with Attribute Selectors and Pseudo-Classes
Advanced Selectors
Form Basics
Organizing Forms
Choosing Options
Table Basics
Structuring Tables
Display Modes
Float Layout
Positioning Schemes
Flexbox Layout
Grid Layout
Introduction to Design
Understanding Aesthetics
Becoming a Problem Solver
Design Foundations Final
Workspace Basics
Layer Basics
Masks Basics
Type Tools
Vector Shapes
Slices & Save for Web
Workflow Basics
Introduction to Illustrator
Creating an Icon
Introducing JavaScript
JavaScript Variables
JavaScript Numbers
JavaScript Conditional Statements
JavaScript Functions
JavaScript Loops
JavaScript Arrays
JavaScript Objects
Introduction to Methods
Constructor Functions & Prototypes
Introduction to jQuery
Creating a Spoiler Revealer
Creating a Simple Lightbox
Creating a Mobile Drop Down Menu
Creating a Password Confirmation Form
Creating a Simple Drawing Application
JavaScript and the DOM
Chrome DevTools Basics
PHP Getting Started
PHP Data & Structure
PHP Datatypes
PHP Conditionals
PHP Loops
PHP Functions Basics
PHP Returns & Closures
PHP Internal Functions
PHP Objects and Classes
PHP Properties & Methods
PHP Inheritance & Interfaces
Dependency Management
Slim and Templates
Selecting Elements and Adding Events with JavaScript
Getting Started with Java
Using your New Tools
Perfecting the Prototype
Meet Objects
Harnessing the Power of Objects
Creating the MVP
Delivering the MVP
Getting There
Organizing Data
Exploring the Java Collections Framework
Efficiency!
How it Works
IDE Exploration
Understanding Flexbox
Advanced Tooling
Graphical User Interfaces
Design a Better App
Installing Wordpress
WordPress Themes
Customizing WordPress Themes
Custom Post Types and Fields
Widgets and Custom Menus
Getting Started with BuddyPress
WordPress Plugin Best Practices
Local WordPress Development
Introduction to PHP for WordPress
PHP Basics for WordPress
More Advanced PHP for WordPress
Starting a WordPress Theme
Working with CSS and JS in WordPress Themes
WordPress Header and Footer Templates
The WordPress Loop
Building Page Templates in WordPress
Building Out WordPress Navigation
Custom Post Type Templates
Adding a Blog to a WordPress Theme
Custom Homepage Templates in WordPress
Finishing Your WordPress Theme
How WordPress Templates Work
Core WordPress Theme Files
Homepage Templates in WordPress
Page and Post Templates in WordPress
Archive Templates in WordPress
Custom Post Type Templates
Media Templates in WordPress
A Template Hierarchy Review
Setup a Bootstrap Theme
Create Bootstrap Styled Theme Templates
Add Bootstrap Components to WordPress Theme
An Overview of Hooks in WordPress
Filter Functions in WordPress
Action Functions in WordPress
Hooking Into WordPress Plugins
Overview of the WordPress Customizer
Native WordPress Customizer Options
Custom WordPress Customizer Settings
Admin Color Schemes
How WordPress Plugins Work
Customizing the Login Screen
Controlling Admin Navigation
Custom Dashboard Widgets
Content Comes First
Enhancing the SEO of a WordPress Theme
SEO Plugins for WordPress
Getting Started with WooCommerce Theme Development
Global and Product Templates and Hooks
Cart, Checkout and Account Templates and Hooks
Starting a Custom WooCommerce Theme
Customizing the WooCommerce Cart and Checkout Process
Building a WordPress Plugin Settings Page
Connecting WordPress Plugins with 3rd Party APIs
Building WordPress Template Tags, Widgets, and Shortcodes
Launching and Supporting a WordPress Plugin
Getting Started with CSS Layout
Controlling Layout with CSS Display Modes
Page Layout with the Float Property
CSS Layout Project
Positioning Page Content
Responsive Theory
Media Queries
Responsive Patterns
Flexbox Properties
Building a Layout with Flexbox
Introducing Adobe Illustrator
Creating a Wireframe
Managing Content in WordPress
Installing Sass and Setting up the Project
Refactoring with Sass
Debugging, Best Practices, and Production
Logo Design
Adding Images and a Mockup
Save for the Web
Getting Started with CSS Transitions
Transition Timing Functions and Delays
Getting Started with CSS Transforms
Adding 3D Effects with CSS
Introduction to SVG
Creating an SVG
Transitions and Transforms
Keyframe and Line Drawing Animations
Logo Design 101
The Logo Sprint
Introduction to Brand Identity
The Brand Identity Design Process
Case Studies and Examples
Finalizing the Project
Getting to Know Bootstrap 4
Responsive Layouts with the Bootstrap Grid
Using Bootstrap Components
Building Forms with Bootstrap
Traversing and Manipulating the DOM with JavaScript
Media Basics
Captioning Video
Custom Media Players
AJAX Concepts
Programming AJAX
jQuery and AJAX
AJAX and APIs
Prototypal Inheritance
Quiz Practice Project
Introduction
Websites
Web Apps
Planning for Performance
Measuring Performance
Optimize Assets
Combine and Minify Assets
Moving Around in the Console
Getting Familiar with HTML and CSS
HTML: The Structural Foundation of Web Pages and Applications
Make It Beautiful with CSS
Adding a New Web Page
Getting to Know PHP
Unit Converter
Daily Exercise Program
PHP on the Web
PHP Conditionals
PHP Arrays
PHP Loops
PHP Includes
PHP Inventory
Getting the REST You Need
PHP Email Forms
PHP Email Form Errors
Data, Databases and SQL
Getting Data from a Database
Finding the Data You Want
Contact Forms & Mailers
PHPDB Stage 1: Databases and PHP
PHPDB Stage 2: Querying the Database with PHP
PHPDB Stage 3: Using Relational Data
PHPDB Stage 4: Pagination with LIMITs
PHPDB Stage 5: Search
Console Users and Permission
Why Object-Oriented Programming?
Understanding Classes
Building the Recipe
The Browser Environment
Getting a Handle on the DOM
Making Changes to the DOM
Responding to User Interaction
First Steps in React
Thinking in Components
Getting Started with Sass
Getting Started With HTML
Structuring Your Content
Images, Text and Links
Going Further with HTML
Computer Basics
Computer Languages
The Internet
WWW
Getting to Know Bootstrap 4
Responsive Layouts With the Bootstrap Grid
Using Bootstrap Components
Building Forms With Bootstrap
Becoming a Design Thinker
Becoming Acquainted with Your User
Understanding your User’s “As-is” Scenario
Designing for Your User’s
Telling the Story
What is Wireframing?
Meet Python
Types and Branching
Functions and Looping
All Together Now
Meet Lists
Using Lists
Build an Application
Getting to Know Tuples
Introduction to Functions
Getting Info In and Out of Functions
Packing and Unpacking
Sequence Iterations
Sequence Operations
Introducing Dictionaries
Iterating and Packing with Dictionaries
Python: Instant Objects
Python: Inheritance
Python: Advanced Objects
Dice Roller
Cleaner Code
PHP Includes
PHP Inventory
$_GET and $_POST
Filtering Inputs and Escaping Outputs in PHP
Building a Collection
Inheritance
Extending the Family
Designing Interfaces in PHP
Using Interfaces in PHP
Abstract Classes in PHP
Hello, JavaScript!
Storing and Tracking Information with Variables
Working With Strings
Making Decisions in Your Code with Conditional Statements
Working with Numbers
The Math Object
Create Reusable Code with Functions
Getting Started with CSS
Pass Information Into Functions
Basic Selectors
Understanding Values and Units
Fundamental Concepts
The CSS Box Model
Box Model Concepts
CSS Layout Techniques
CSS Media Queries
Styling Text
Styling Boxes
Styling Images
Finishing Touches
Hello Internet!
Common Attacks and Defenses
Security in Practice
Security: Concerns
Security: Solutions
Why Protect Your Web Apps
Protecting Data and Keeping Attackers Out
Maintaining Secure Web Apps
The OWASP Top 10 Explained
Vulnerabilities:  Injection, XSS, CSRF
Vulnerabilities: Authentication, Access, and Sensitive Data
Vulnerabilities: Configuration, Components, and Logging
Arrow Functions
Introduction To Accessibility
Build an Accessible Form
Mobile-First CSS Layout
Simplify Repetitive Tasks with Loops
Working with 'for' Loops
Getting Started With Laravel
Application Navigation (Routing)
MVC (Controller)
MVC (View)
Store Multiple Values in an Array
Loop Through Arrays
Multidimensional Arrays
Object Basics
Loop Through Objects
The Browser Environment
Getting a Handle on the DOM
Making Changes to the DOM
Traversing the DOM
Introduction to Object-Oriented JavaScript
Object Basics
Working with Classes in JavaScript
Getters and Setters
Introducing Grid Layout
Flexible Sized Grids
Going Further with Grid Layout
Introducing Vue
What a Beautiful Vue!
Sweeping Vues: Loops, Methods, Directives
Building a Flashcard App

Blog

The Dangers of ‘Can’; Coping With Being Visionary

How I manage the responsibility behind innovation.

Read More
Freelancing and Me

Why I started, stayed, and am ready for what’s next

Read More
Music in the Background

A brief discussion on where music fits in my life today.

Read More