Welcome to my resume page. This page is for perspective employers, recruiters, and curious bystanders. Within this page you will find all of the most important details about why you should want to hire the most awesome Software Engineer this side of the Mississippi… me!
First, off, you probably want to take a look at my resume. It’s chock full of technology keywords that drive the HR/Recruiter types mad with glee. I update this resume about once a quarter (every three months) or so. You can choose one of three delightful formats that works best for your particular corporate needs…
But more important than a resume is getting to know me and really understanding why you should hire me. So here goes…
THE THREE SENTENCE SUMMARY
MORE ABOUT ME
I love to program. I have been writing code since I was twelve years old and getting paid for it since I was fifteen. A day in which I do not write code is a bad day for me. This means I have over 30 years of real world programming experience under my belt which I bring to bear on my every day work. Additionally, I am crazy passionate about the technology I work with and actively strive to keep myself informed about the latest trends, changes, and next big thing in my field. I participate in communities like Github, JSConf, Reddit, and Twitter reading all the latest articles and happily offering advice and commentary to anyone whom wants to listen.
WHAT DO I KNOW
Other: I have worked with all sorts of technologies over my 30 years in the field. Everything from Assembly to Ant, Pascal to PHP, and SQL to Shell Scripting. I have implemented medium (200+) client networks from scratch, designed complex build and deployment systems, and assembled my own hardware for decades. I have an intuitive understanding of how computers work and am entirely capable of designing and developing whole systems from hardware to data storage to user interaction.
MY PROGRAMMING PHILOSOPHY
I believe in well designed and structured code that focuses on inheritance, avoids coupling, and encapsulates behavior as much as possible. This means that I like to write clean objects which contain exactly what they need to get their job done and that do not rely heavily on external interactions. Whenever possible code should be well formatted, readable in its own right, and highly defensive. I hate pyramid code and fully understand the various means of dealing with it.
MY DESIGN PHILOSOPHY
While I am no artist, I am capable of doing most User Interface design. In these designs I strive to emphasize consistent, understandable, and intelligent systems that maximize user flow and customization. I am extremely detail oriented and believe that a pixel perfect implementation is always worth the effort. My designs ideals focus on helpful but not intrusive, clean but not minimal, informative but not ugly. The best User Experiences stem from tools that give you exactly what you need without being over bearing.
MY PROCESS PHILOSOPHY
In the last 20 years in this industry I have seen just about every software process management technique you can imagine. I have participated in large waterfall projects. I have done the scrum (and I am, in fact, a Certified Scrum Master). Ultimately, I have learned that the best processes are the ones that largely get out of your way and let you focus on the things you need to get done. I believe that the best teams have natural, organic communication in which participants share openly of their own volition instead of having forced discussions. To me, a good team is everything.
WHAT I AM LOOKING FOR
Here’s a list of my ideal job features… It’s a dream list, not a requirements list, so please don’t self censor your position just because it doesn’t meet all of these. Also, these are in no particular order of importance.
Coding: I love to code, so any employer that wants to hire me should know this right up front. I am going to write code on a daily basis whether it be for your company or in my own spare time. The cool thing for any company that does hire me is that I am very prolific, especially when I get into my flow state. Let me write the code and I’ll amaze you every time.
Creativity: I draw strength and energy from creative outlets, whether they be in my work or in my personal life. A project that maximizes my creativity and allows me the opportunity to express myself in my work is going to reap the largest reward of my experience. I am equally comfortable creating visually (as long as you don’t expect great art), textually, conceptually, or architecturally.
Learning: I am very passionate about my work and keeping my skills in top form. To that end I spend a lot of time staying current and attempting to learn everything I can. I am constantly on the internet learning a new language, a new library, or the life and times of Charles Dickens. Anything I can do to increase my understanding of technology and the world around me, I’m there.
Challenge: I want to be mentally challenged on a daily basis to produce something extraordinary and I want to be invested in whatever that is. To do so, I like to be part of the process from the very beginning, not just an engineer on the outside of the architecture looking in. I am not the kind of engineer that you drop a one hundred page requirements document on and expect results. I don’t think anything good comes from disassociating the developer from the design.
Meaning: The more I believe in the product I am working on, the more faith I have that I am building something for which there is a genuine need, the more invested I am in what I am writing. This naturally leads to me being more passionate about what I’m doing which in turn makes me more productive. So, given Transitivity of Implication, invested is directly equal to productivity. Bonus points for letting me build things that will save lives, end suffering, enable world peace, or any other good karma producing activity.
Comfort: I believe that a person’s work environment is critical to their ability to do the best job possible and that for each person those environmental needs are different. The ideal job for me is one that recognizes this fact and provides the greatest possible flexibility for all employees. These environmental factors include things like casual dress, flexible work hours, comfy chairs, indirect lighting, etc. Bonus points if I can bring my dog to work. I don’t have a dog, but a company that allows that is my type of place.
Telework: With regards to Comfort from above, I am very interested in roles where I can perform Telework as needed. I am actively seeking a 100% telework role, but I’m not adverse to traveling to your home office once in a while for some solid face time. I am an active user of tools like Instant Messaging and IRC, and have no objection to Google Hangouts or FaceTime.
Mentoring: One of my great joys is teaching other people how to do things. Whether it be why they should be using === instead of ==, or what exactly is cool about function currying, or how to run a Horizontal Stack Offense in Ultimate Frisbee, you will always find me ready and willing to instruct. I prefer the collaborative approach to instruction over explanation or demonstration.
Technology: I love technology and have been tinkering with it since I was a wee little kid. I rebuild my own home computer systems and laptops on a regular (almost yearly) basis, making sure I have the hottest and most powerful tech around. I like big RAM, amazing resolution, and blazing fast speed. Given my preference I would prefer to buy and bring my own computer with me when hired because I can all but guarantee that it’s going to be better than the Dell with which you wanted to saddle me.
MY EMPLOYMENT LIMITATIONS
While I don’t want to limit myself as to whether or not I would be interested in working for your company, there are some things I am not willing to compromise on and these are listed here below.
Location: I live in Columbia, MD and am unable to relocate. Also, I am actively NOT interested in commuting to Washington DC or Arlington, VA on a daily basis. I am, however, very willing to work remotely with occasional trips into the office. This has the advantage of providing me with the Comfort and Technology I seek without any overhead to the employer.
Bad Technology: I have no interest in working with the following technologies… SAS, COBOL, Fortran, iLog Rules, C, or Flash/ActionScript. Yes, I know I list these on my Resume, but that doesn’t mean I want to work with them again.
Experience: I have 20+ years of experience in this field. I am not a junior developer, or even a mid-level developer, and I am not looking for employment in those roles.
Web Design: As I have said before, I am not an Artist and thus I am not technically a Web Designer. I can do a decent job at it, but if you are looking for ultra flashy then I’m not your guy.
Suits: If you’re a button up collar and tie type of company I’m just not interested. While I do not object to dressing up on occasion to meet customers or go to the opera, I do not want to do it on a daily basis. My ability to write code is not made better when I wear a tie.
SAMPLES OF MY WORK
For the last 10 years or so I have been working as a Government Contractor and as such there are no examples of my work online. However, there are few other places you can checkout some of my code…
arei.net – This website is built on top of WordPress. However, the WordPress layout was rewritten by me in PHP to better suit my needs. Likewise, the style/CSS was completely designed and rewritten by me (including the logo work). Additionally, in the upper right hand corner of this website you can see my latest Twitter and Untappd comments. This feature is powered on a custom built NodeJS service.
A Story of Glen – I designed and built a little animation framework and animated story to show it off. All code is mine with the exception of PrototypeJS and the Meyer CSS Reset. Feel free to pull it open in your favorite web developer tools.
The Game of Life – It has been about 15 years since I last tried coding the Game of Life and I thought I’d do a refresher. I was particularly interested to see how this might be implemented within the Web space and how performant I could make it. So, here it is. The source code is also available over on Github.
Github – I am the original author and maintainer of several small libraries/tools like the node-untappd library and the npmbox utility. You can find these on my Github account. Additionally I like to park little snippets of various ideas I’m playing with, whether or not I am intending to release them, on Github. So please, feel free to browser on over and take a peek at some of my code. Keep in mind it can be pretty unfinished over there.
LinkedIn – No, I didn’t write this site, but I thought you might like to hit up my LinkedIn account and see some of the great comments my customers and coworkers have written about me.
Twitter – I am constantly on Twitter. Checkout some of the things I’m tweeting and retweeting. This is a great way to get to know me, but keep in mind that it’s a personal account and can occasionally get a little silly.
GETTING IN TOUCH
So now that you’ve read all about how awesome I am and how cool it would be to work with me, what’s the best way to get in touch? Why email of course. Simply drop me an email at jobs . at . arei . dot . net and introduce yourself. Show me that you’ve read this page and that I’m someone you’d like to work with and I’ll respond back, usually quite quickly.