Bio
My name is Rob Norman and I've been involved in web integration and development for twelve years. I have a passion for writing elegant and efficient code with a focus on maintainable structure. I enjoy the opportunity to tackle complex problems, seeing them as an opportunity to learn and to improve my process.
I have experience working in team environments and I am an outgoing and friendly individual. I enjoy collaborating with others to accomplish the best result possible.
Ecommerce
For the past 5 years I have worked almost exclusively on ecommerce websites. My work on these sites has lead me through a wide variety of projects positioned up and down the stack. Everything from custom javascript workarounds for missing front-end features in Bigcommerce to a PHP-based application that converts exported product or order data from one store into formats required by another.
I have played a lead role in creating over a dozen applications that extend Bigcommerce functionality using their API in order to provide very specific custom functionality for a client.
Development
I have created several PHP/MySQL/AJAX based web applications for internal use by the Canadian Air Force. I also have experience using several popular rapid development frameworks including Codeigniter, CakePHP and Ruby on Rails.
I have set up development environments in OSX, Linux and Windows and I am comfortable developing on any one of these.
I use Git for my personal version control and I also have experience with Subversion.
Integration
I have extensive experience using the full range of front-end development tools including HTML, CSS and JavaScript to create pages that are attractive, standards compliant and compatible with all major browsers. I understand the importance of organized, maintainable and well documented code. I have worked with and created custom themes for several popular content management systems such as Wordpress and Bigcommerce.
Skills
- PHP/MySQL
- HTML/CSS/JavaScript
- jQuery
- Rapid Development Frameworks and the MVC design pattern
- Specific experience with CodeIgniter, CakePHP and Ruby on Rails
- HTTP request methods and AJAX
- Understanding of Cross-site scripting and how to prevent it
- Version control
- Specific experience with Git and Subversion
- Relational database design
- Object Orientation and related concepts including Inheritance and Polymorphism
- Data structures such as linked lists/binary trees
- Understanding of sorting algorithms and recursion
- Java
- Some C, C++ and C#
- Some Python and Ruby
- Ability to avoid rod spinning while playing foosball
- Excellent at the classic arcade game Snake
- Built a browser-based version of it: walrusk.com/worm
- Unfortunately not quite as good as my wife, who holds the high score
Work Samples
- normandev.com - Simple portfolio site
Features:
- A preview of some projects I have worked on outside of Sprout Commerce
- cron0.com - Stopwatch
Features:
- Built with CodeIgniter
- Timing data is stored in MySQL (i.e. does not rely on client-side timing).
- Able to time multiple things simultaneously and provide a running total (e.g. cron0.com/QmHHU)
- Read only link for sharing with others (e.g. cron0.com/M933T/read)
- jump.walrusk.com - Photo blog
Features:
- Responsive
- Automatic paging
- Ability to send a photograph to a specific email address that will automatically resize and post the image
- animaleyedr.com - Client website (Contracted by a design firm who provided a PSD of the design)
Features:
- Responsive
- Contact form
- Lightbox image gallery using a jQuery plugin
Work History
Contracted/Freelance Web Developer
February 2009 to Present
Position: A wide range of tasks ranging from database design and server-side programming to front-end design and integration.
Mate1.com Inc.
August 2009 to September 2010
Position: Web Designer and Integrator
RedstoneX
April 2009 to August 2009
Position: Web Designer and Developer.
Canadian Forces School of Aerospace Studies
May 2007 to April 2009
Position: Web Developer and Designer, responsible for the creation and maintenance of the online portion of the Air Force Officer Development Program (AFOD).
Computer Science Student at U of M
January 2006 to April 2009
Studied Computer Science at the U of M but left early after my third year to pursue other goals.
References available upon request.