Tommy R. Williams Jr.

Highlight chime words
Linked In: https://www.linkedin.com/profile/view?id=119777509
Blog: http://blog.webdevinci.com
Linked In: https://www.linkedin.com/profile/view?id=119777509
Google+: https://plus.google.com/u/0/+TommyWilliams/
Twitter: https://twitter.com/webdevinci
[ Click to read the TL;DR about me ]
For the past two decades of my life I loaned much of my time to feed my passion of web programming. My infatuation started at a young age and has continued growing at a rapid rate. The main focus of my passion resides on the front end, with HTML, Javascript and CSS. However, throughout my journey I have applied much of my learning to server-side languages, databases and even lower level system software.
It has always been my goal to learn more about current technologies and improve every piece of code I encounter. With the knowledge I gain, I plan to turn that code into a beneficial, profit-generating application for whichever company I work.
In addition to the importance of understanding elegant, efficiently written code, I understand how to transform that code into actual business value.
My most recent interests involve learning full-stack Javascript, making use of NodeJS, ExpressJS and MongoDB. I have also been investing much of my time in learning ECMAScript (Javascript) 6 & 7. I continue to keep Chrome developer tools and site performance at the top of my priority list.

Skill Summary

Main Focus

  • Angular 2
  • ECMAScript6 (ECMAScript Next)
  • Node JS
  • Ionic
  • Typescript

Secondary Focus

  • Web Components
  • Web Sockets
  • Gulp JS
  • MongoDB
  • Mongoose JS
  • ExpressJS
  • Ionic

Client Side

Server Side

Supplementary Skills

Work Experience

Office Depot: Sr. UI Developer
[4/2013 - Ongoing]
Summary: Gained high value skills while working on an enterprise e-commerce platform for a fortune 500 company. My role helped bring 10 years of old patchwork code to today's standard object-oriented design and make use of more modern libraries. Our teams practice SCRUM (agile) methodology, with two week sprints.
Viking (Europe), Content & Navigation: As Sr. User Interface Developer, my workload included supporting up to three languages on twelve global e-commerce B2B & B2C websites. The majority of my contributions were toward the redesign of the dynamic mega-menus, the re-creation the search results page, refinements, and compare functionality. Viking has been frozen for some time, and the aforementioned changes can still be seen on most of their sites: http://www.viking-direct.co.uk & http://www.viking.de
Office Depot - North America, Account Team: As the Viking brand slimmed down on resources, I moved to the North America Account team where I would be responsible for implementing the new user interfaces for the Office Max B2B & B2C integration and account page redesigns. During this time, I also worked on bringing modern technologies (HTML5, CSS3, Compass+SASS) to the application, along with refactoring aged JSP and Javascript files.
Technologies Used: Main development required Eclipse/RAD + Web Sphere. Subversion (SVN) was used for a code repository. The main languages used were HTML5, CSS[3], Javascript, jQuery, Java, and JSP/JSTL.
C3 Location Systems – Front-End Developer
[5/2010 – 4/2013]
Summary: C3 is a small company that provides a software platform for vehicle GPS devices. The company sells GPS devices to customers and provides a back-end for the user to track their assets and direct their fleet of vehicles.
Starting off as a front-end developer, I was responsible for adding to the system's aesthetics, as well as apply my knowledge of MySQL. Being a small company (around 10 total employees) I absorbed several different roles in the company. As others had left, I became the system-expert and my title became ubiquitous.
Technologies Used: Our main back end technologies consist of Java, JSP, Hibernate and MySQL. Our client-side software uses Javascript, jQuery, jQuery UI, CSS, and Google Maps v2 & v3 services. I also created the mobile version of our application using jQuery Mobile and HTML5 for geo-location services. My role later expanded to parsing device packets in Java, Linux admin (SSH, VNC, FTP, Cron jobs, Tomcat & Apache), DBA, on-boarding and mentor, while improving the UI.
ERA Europe – ColdFusion Developer
[11/2009 – 5/2010]
Summary: The company was responsible designing and maintaining ERA web sites across Europe. This included exporting/importing any new real estate properties across sites. The sites required having translation databases setup for each of the 13 countries.
My crucial role helped bring each of these dated sites to new times, and to build applications to allow for agents to have better success. The e-mail signature application that I created helped bring in consistency across countries for the agent's emails, and more importantly, brought in ERA Europe extra revenue.
Technologies Used: Coldfusion, CF Scripts, Fusebox, MsSQL, XHTML, Javascript, jQuery and CSS.
University of Central Florida – Computer Vision Research: C++/OpenGL Programmer
[1/2007 – 5/2007]
Summary: Implemented vision-related algorithms on a GPU using OpenGL/GLSL to find speed ups comparable to the CPU. I implemented a particle advection algorithm using the GPU's parallel processing architecture. The algorithm was adapted from MATLAB code. I also designed & programmed a general graph-cut algorithm using OpenGL Shading Language.
Technologies Used: C++, MATLAB, OpenGL, GLSL.

Personal Ventures (The important stuff!)

Note: There are several super top classified applications that I am currently working on that cannot be mentioned here. But it is noteworthy that I have been using Ionic 2 + Angular 2 + Typescript to create these newer, classified applications, and have been since the infancy of Ionic 2 & Angular 2.

Web Components
[05/2016 - Ongoing]
Summary: Since attending Google IO 2016, they made a huge impression on just how important web components are, and the fact that we use them even when we don't know it. I started learning to make custom web components to make everyday widgets more re-usable and easier for front end developers to recreate and customize.
Technologies Used: This project uses ECMAScript 6, includes the Web component library as a polyfill and is compiled by Babel for older browsers.
Project: The Style Radio was the web component that I had built from scratch in the way that I most prefer. (NOTICE: The simplicity in the HTML to create a rather complex radio button widget; all self-contained)
https://github.com/webdevinci/WebComponentPlayground/tree/master/components/style-radio
The others are adapted or taken from others on github. https://github.com/webdevinci/WebComponentPlayground
RIP - Rest In Peace
[06/2016 – Ongoing]
Summary: RIP is a node application created as a base structure for further projects that will need a RESTful API architecture. This specific project uses Web Sockets to connect via TCP and stream API calls.
Technologies Used: The main service is ran on Node JS server, which uses Express JS to help with routing. For socket implementation, I used Node's 'websocket' library, and another implementation uses Socket IO to better support older browsers.
Missiles
[1/2015 – Ongoing]
Summary: This project was to help my knowledge of the MEAN stack. The project was meant to be a boilerplate MEAN project for my (and others') projects to spawn from. The underlying idea was to make it a social game using Google Maps and real time data to be able to send missiles at participating drivers and earn points when you correctly anticipate trajectory, range and time to hit your target while it moves unpredictably. It has a login, registration and forgot password with routing and MVC structure as part of the boilerplate.
Technologies Used: It is based on Node + ExpressJS server, and focus was also heavily on ECMAScript 6, MongoDB, HandleBars JS (front end & server side) as well as a good refresher on git. Many libraries were also incorporated while creating this project, such as crypto-js to hash and encrypt passwords, Passport to manage logins and Mongoose as an interface to MongoDB.
Location Over Time LLC: Sole Lead Architect, Designer & Programmer
[11/2010 – Ongoing]
Summary: I designed (UX & code) and architected an enterprise level Location-Based-Software (LBS) platform for a real-time GPS tracking solution` The web application gave users the ability to track their fleet of Android GPS devices, set alarms, geo-fences, landmarks, geo-tagged media and much more. The application provides robust reporting, communication channels, as well as custom branding per distributor portal.
(More information on features can be found at http://www.displaytracks.com).
Display Tracks: This is a website for a distributor of the Location Over Time service. I contracted to create the Display Tracks website, which integrates with Location Over Time and has several videos that show off the web application. The website was built with AngularJS as a single page application and uses Bootstrap to assist with responsive design.
Customers are able to login to the Location Over Time web application through the login portal located in the top right of every page. There is an admin system to allow admins to easily add/remove/edit content on the site.
Mobile web view: The mobile web application is a minimal version of the site that allows users to view live device data and can be found as a web view in the Android App. Its purpose is to connect managers on the run with their fleet of vehicles in real time, allowing them to view alarms, messages and current locations of devices.
iPhone Cordova App: The application was previously only available in Android. The iPhone application uses Apache Cordova (not native). All location, UI and communication functionality is driven by web technologies (HTML5, CSS3, JS, WebSQL).
Technologies Used: The core technologies involved are Google Maps v3 API (with panoramio, places, weather and visualization libraries), Javascript (jQuery core, jQuery UI), JSON, AJAX, CSS, PHP, MySQL, and Apache web server running on a CentOS VPS that I manage.
Bartexts.com – Co-founder & Lead Web Developer
[8/2009 – 10/2010]
Summary: Two colleagues and I created this site because of the uniqueness of the idea and the great domain name that we created: Bartexts. The idea was to partner with bars & restaurants and send exclusive deals out to our customers.
I architected and created the entire web application, from the design to the database. This included the algorithms to target daily specials and send them to the appropriate people via SMS text message. I coded the entire billing system for the bar managers to be able to pay for the service. The back end system recognized three different types of users, with separate views and settings.
Technologies Used: HTML, CSS, jQuery, Javascript, PHP & MySQL.

Older Work

Lightwait.com – Sole Lead Architect & Developer, Founder
[10/2009 – 12/2009]
Orlando Drink Specials Co-founder, Lead Web Developer & Sales
[8/2006 – 1/2008]
Napster (Connextions) – Technical Support
[8/2005 – 1/2007]
Exotier.com – Co-Founder, Lead Web Developer & Contract Web Developer
[8/2004 – 8/2007]

Education

The University of Central Florida – Bachelors of Science in Information Technologies
[6/2003 – 8/2009]
Non-declared minors in Computer Science & Mathematics
  • IEEE: UCF Student Chapter Board member, Maintained the chapter website and collaborated on allocation of funding and yearly events.
  • Dean's List: University Of Central Florida College of Engineering.
  • Summer Program for Academic Careers in Engineering (SPACE): A twelve week program that helped introduce freshmen students to engineering work environments, understand what it takes to become an engineer and provided a series of short internships.