About Me
Hi, my name is Justin, and I'm a code-aholic. Ok, maybe that's not the correct term (I'm fairly certain there is no such thing as 'code-ahol'), but I love to program!
I've been around computers since I was a very young age, as my father has always been interested in new technology. I have vague memories of writing my first programs in GW-BASIC, performing very simple mathematical tasks. Fast-forward to college where I am exposed to Java for the first time and I'm introduced to Object Oriented principles, allowing me to create much cleaner code and giving me insight into what is actually possible given such a powerful language. Fast-forward (one last time) to today, where I've found a new love of the dynamic language Ruby, which grants me the ability to view and understand the core, while also allowing me to have it bend to my will (open classes are a beautiful thing!)
Beyond my love for programming, I've found I really enjoy creating solutions that can bring great value to a business. Whether it be an application that improves efficiency of employees or an application which brings something completely new to the table, I love solving problems and enjoy the satisfaction that comes with seeing my product make a difference.
I've been a professional developer for about 6 years now, and in that amount of time I've used many different technologies; many of which you will not see listed in my skills below, as I don't consider having used a language once constituting it being a 'skill' I have acquired. The skills I have listed are the ones that I thoroughly enjoy using and, though I may not consider myself 'the expert of experts,' I believe I have a higher-than-average understanding of how they work.
Skills
-
Languages
-
Flex
- Duration
- 3 years
- Description
-
While working at SunBridge Capital, my team was tasked with the creation of a portal for their brokers to use to enter applications and manage existing contracts. After some investigation we discovered Adobe Flex, and since then GUI work for me has not been the same. Flex brings an amazing amount of ease to GUI creation, allowing for very rapid development and freeing you from cross-browser issues you may encounter using HMTL/CSS/Javascript. I also have some limited experience in using Flex Charts, which seemed very easy to use once you have a basic understanding of Flex.
[Click to view]
-
Ruby
- Duration
- 4 years
- Description
-
When we were given a project at SunBridge Capital to create a website to be used to advertise our equipment for sale, we decided Flex was a bit heavy for what we wanted to accomplish, so we decided to go straight HTML/CSS/Javascript. However, at that time our back-end systems were all Java and we weren't sure which of the many, many Java web frameworks would work best for us. At one point I had pulled up a listing of the top Java frameworks, and after scanning the first of several pages I realized I'd never be able to evaluate them all and that nearly all of them seemed very convoluted. It was then we decided we'd try something that had started to pick up a lot of steam lately: Ruby on Rails. After completing this project, we decided Ruby was the language for us, and we began using it for all of our systems, even for those with a Flex GUI. For this, we began using an open source product called RubyAMF, and after that our productivity skyrocketed. Ruby gave me a new appreciation for the power that a truly dynamic language can provide. But, as they say, with great power comes great responsibility!
[Click to view]
-
Regular Expressions
- Duration
- 2 years
- Description
-
Prior to using Ruby, I'd take one look at a regular expression and instantly feel defeated. I never really took the time to understand how to interpret them. When I fell into the Ruby world though, I found that it was common to use them whenever possible, so I decided to buckle down and try to gain an understanding of the madness. What I found was that it wasn't all that hard to understand, and meanwhile it was incredibly useful, concise and precise. Now I love regex and can't imagine writing Ruby without it!
[Click to view]
-
HTML/CSS
- Duration
- 4 years
- Description
-
I've used HTML and CSS here and there for many years. Recent work has gotten me interested in trying to produce more semantic HTML; properly formed, using the correct tag for the job, and devoid of styling (leaving this function to CSS). While attempting to use these tools to create a clean UI that is consistent amongst the popular browsers can be a frustrating task, it is very rewarding to see it work in the end. For simple informative websites that don't have a large amount of user input, I generally would prefer this method of UI development to Flex.
[Click to view]
-
Java
- Duration
- 3 years
- Description
-
Though my most recent work has been done with Ruby, I understand the roles that Java can play. Being a statically typed language, I think it plays an important role in large companies where the skill-set of the developers varies from beginners to experts. The rigidity of the language provides a safe and descriptive environment for its' users and as the language has matured, a very wide array of libraries have become available to help you accomplish almost any task. The fact that one of the leading Ruby VMs (JRuby) is writtin in Java speaks volumes on how capable and versatile this language is.
[Click to view]
-
Javascript
- Duration
- 1 year
- Description
-
I haven't had the opportunity to use Javascript that often until recently. However, it is just another dialect of ECMAScript, the same as ActionScript which is used in Flex and I'm very familiar with. My recent work with JavaScript goes hand-in-hand with my recent Ruby on Rails work, and appreciation for HTML/CSS. I've been trying to familiarize myself with JQuery, which seems to a big time saver.
[Click to view]
-
Databases
-
MySQL
- Duration
- 4 years
- Description
-
MySQL is definitely my go-to database. It is very easy to install on any operating system, is widely supported by languages and frameworks and also has many tools available for administration. MySQL allows a developer to easily work with the database without being required to be a database 'expert'.
[Click to view]
-
PostgreSQL
- Duration
- 2 years
- Description
-
I've found PostgreSQL to be a bit more robust than MySQL, but a little more convoluted to set up and maintain. I tend to like to use MySQL for its ease of installation when starting out, but for larger scale projects I'd definitely go with PG instead.
[Click to view]
-
Microsoft SQL Server
- Duration
- 2 years
- Description
-
In the open source community, Microsoft is often considered a bad word. However, my interaction with SQL Server in my first job was generally pleasant. It seemed to be a very stable database and the tools provided were very powerful and easy to use. Usually my biggest concern when I encounter a SQL Server database is over-use of stored procedures, which will often splinter business logic into a million pieces rather than having it centralized and easy to follow. Aside from that, I would not shy away from using it as a database provided the language/framework I was using provided support for it.
[Click to view]
-
Version Control Systems
-
git
- Duration
- 1 year
- Description
-
I thought I liked Subversion; then I tried this. Though the learning curve with git seemed intense at first, I can't imagine going back to subversion now. The distributed nature of git allows me to have the entire code base and history locally, with no need to connect to a remote server to view previous commits. And if I do need to share code with others, we can either push/pull directly to each others repositories or set up a central store (for which I prefer to use gitosis). The merging capabilities of git also seem far superior to those of subversion, which makes working in a multi-developer environment that much easier. If you've ever gone through that pain of losing code due to a wonky SVN merge, give git a shot!
[Click to view]
-
Subversion
- Duration
- 3 years
- Description
-
While git is my new favorite SCM, Subversion still holds a far larger market share. It has proven to be very reliable and fairly simple to use. Many applications (such as project management and ticketing systems) include subversion integration, making it an obvious choice for a project of significant size. If I use Subversion now, I will often choose to use git-svn, which gives me all the local benefit of using git, while still automatically maintaining a subversion repository for those advantages.
[Click to view]
Education
-
DeVry University
- Duration
- November, 1999 - November, 2002
- Degree
- Bachelors of Computer Information Systems
Work History
-
Zavers
- Title
- Software Engineer
- Employment Duration
- June 2011 - Current
-
Digital Sports Ventures
- Title
- Software Engineer
- Employment Duration
- Febuary 2009 - May 2011
- Description
-
Digital Sports Ventures (formerly known as AthletixNation) delivers NCAA Division I video content to publishers across the country. My work at DSV included the integration of the Brightcove video platform for delivering content and the creation of various Flex applications such as Bracket Challenge (a user game to coincide with the NCAA basketball tournament) and Play of the Week (a flash application allowing the user to vote for their favorite video play each week). Additionally, I created and maintained their Marketplace application (initially as a Flex application, later as a more traditional website using Ruby on Rails).
[Click to view]
-
SunBridge Capital, Inc.
- Title
- Software Engineer
- Employment Duration
- April, 2006 - January, 2009
- Description
-
SunBridge Capital, Inc. is a funding source for all sorts of heavy equipment and commercial trucks. The company was well aware of the advantages technology could bring in this industry and as a result decided to hire a full time development team. As a member of a 3 to 5 member team, we were responsible for writing and supporting applications to support and advance the business: from internal applications to increase efficiency in processing applications and various documents to a public webpage used to advertise equipment for sale. The technology included a FileMaker database which existed prior to the hiring of the development team, followed by Java, Flex and Ruby applications.
[Click to view]
-
DST Systems, Inc.
- Title
- Software Developer
- Employment Duration
- April, 2004 - April, 2006
- Description
-
DST Systems is the forerunner in the country when it comes to data regarding mutual funds. The department I worked in worked mainly on providing a portal for their clients to manage their stock options. I was in charge of their 'Tax Calculator' product, which calculated taxes based on their home and work countries' rules. It was in this environment that I used JAVA for the first time professionally. This was the largest group I have worked with; my direct team consisted of 7 to 8 people, and the department easily held 5 times that (I'm not sure exactly how many employees there were). This taught me the importance of collaboration, both in sharing code and resources and in splitting up work.
[Click to view]
-
Stinson Morrison Hecker, LLP
- Title
- Software Developer
- Employment Duration
- January, 2003 - April, 2004
- Description
-
Stinson Morrison Hecker LLP is the second largest law firm in Kansas City. This was my first professional development job. Our main task was to develop and maintain their intranet and internal tools, using ASP on SQL Server almost exclusively, and a bit of Visual Basic when needed. While the environment itself was pleasant most of the time, I wasn't a big fan of using ASP, which more than often led to dreaded 'spaghetti code'.
[Click to view]