Bootstrap

CMS Developer

After completing my internship with 50onRed, I was offered a position as a CMS (Content Management System) Developer for the company.

As a CMS Developer, my responsibilities involve building and maintaining marketing sites for the company’s core products, and several viral content sites. All of the sites run WordPress, so the majority of my duties involve regular WordPress maintenance: updating core/themes/plugins, selecting and installing plugins, and assisting the content writers with any technical help.

I have also had many opportunities to dig into the more advanced aspects of WordPress. I have modified existing themes to extend their functionality or appearance, and have created new themes from scratch. An examples of these include redesigns of both the blog and careers pages of the company website. I have also developed several WordPress plugins for use on our sites. These include an AB testing plugin, an ad unit manager, an OpenGraph tag manager, and a custom integration with the Jazz (formerly Resumator) API.

In my work, I focus on making sure the sites perform well. I use several plugins to manage the minification of assets and compression of images. Our sites are hosted on WPEngine, and I take advantage of the tools they provide to help our sites perform well. I also take pride in the cleanliness of the code I write. I am regularly refactoring for readability and documentation. I choose to write PHP in an object-oriented style, which helps with organization and maintanability.

Software Engineering Intern

I joined 50onRed as part of their RedLabs internship program. The goal of the program is to provide real-world work and learning experiences by working alongside the engineering and product teams. As an intern, I worked with other interns to complete projects, and worked with engineers on core company products.

During my time in the RedLabs program, I became proficient in Python and the Flask micro-framework, as these technologies are dominant in the company’s core products. I also learned to integrate with 3rd party API’s, the best example of this being a Slack integration called MusicBot. In working on core products, my concentration was on front-end technologies. I learned Jinja templating, and leveled-up my HTML, CSS, and JavaScript skills. The company uses a number of in-house repositories for various components (such as forms, tables, etc.). I contributed to these repositories, adding new features, and writing unit tests for existing code.

I also worked directly with members of the engineering and product teams. I participated in daily standups, and was regularly assigned tickets in Jira. All of my contributions were code-reviewed, which provided invaluable feedback.

YadaGuru

Project

YadaGuru is a college application reminder web application. It is a CodeForPhilly

project, on which myself and another developer work. The purpose of the app is to help college students through the college application process by giving them regular reminders to write essays, get recommendation letters, complete applications, etc. Students use the app by supplying their application due date, and a list of reminders are generated and presented to the student, grouped by date due and category. Students can then print out the reminders or export them to Google Calendar.

Read MoreYadaGuru

Not Your Mommy’s Blog

Project

Screenshot of Not Your Mommy's Blog

Not Your Mommy’s Blog uses a custom WordPress theme called ‘Tiles,’ which I created. The theme is responsive, and features my first attempt at a slider/carousel to display recent posts.

This is my first start-to-finish project for another client, though the client is my wife, so I am not sure if that counts.  :-)

This theme is built from scratch, and contains only features and elements needed by my wife. Perhaps in the future, I might modify the theme, and submit it to the WordPress Theme Directory.

Update: This theme was redesigned in September of 2016. I used the Roots Sage starter theme, which I chose because of its integration with Bootstrap CSS. The overall layout contains many of the same elements, but with a cleaner design.

I also introduced a few tools into my personal setup with this project, including SASS pre-processing, Gulp task runner, and VVV for developing locally.

CodeForPhilly and Yadaguru

Blog post

So, week 1 of the 50onRed has so far been a major success. I have been learning a ton, and have been truly enjoying the work. For the most part, I’ve been working on a Slack integration that I will be writing about in the future.

This week, I wanted to write about the great experience I’ve had so far working with CodeForPhilly.

At the end of April, I was kind of at an odd point in my coding journey. I had just gotten hired into the RedLabs internship, but had a whole month before it would begin. I was still working on Read MoreCodeForPhilly and Yadaguru