I’m a software developer, designer, architect, and project manager with over 15 years professional development experience.
Summary
I’ve managed many successful projects and teams, working with dozens of programming languages, tools, and platforms. I’ve enjoyed designing and building robust, large scale web services, server applications, industrial data collection systems, and high performance business objects. And I still love doing it.
Work History
Discovery Software (2004-current)
I joined Discovery to work with their Sr. Architect of 35 years: we met on opposite sides of an outsourced project and realized that we had to team up. It’s been a great learning experience.
At Discovery, I’ve focused on profit, designing and developing software (new and existing), and mentoring the development teams. I’m currently playing the role of:
- Chief software developer and co-architect, responsible for design, implementation, and review
- Managing software development and IT, reducing IT costs significantly
- Sr. Consultant, providing technical leadership for partner companies
Triant Technologies (1996-2004)
I started at Triant shortly out of university, where I was challenged by the industry and the teams. I spent most of my time designing and developing infrastructure and embedded systems in C, C++, and Java for tracking and tuning semiconductor manufacturing. While at Triant, I worked as a:
- Software Architect, Sr. Software Developer (2000-2004)
- Software Developer, Technical Team Lead (1996-1999)
Contract Development (1992+)
I also consult, build software, and design web services. In the last few years, I’ve primarily worked on web projects and website design. A summary of my consulting:
- Web design/development (1993-now)
- Software/management consulting (2000-now)
- Aerotek Contracting Services, embedded applications developer (1995-1996)
- Career Development Institute, C/C++ classroom trainer (1996)
- Database programmer, various contracts (1992-1995)
For a listing of my current public projects, check out my portfolio.
Projects and Skills
Web products and services
- Architect and consultant on cloud/scalable web service (PHP, LAMP, AWS, Javascript/Ajax, Perl, Python, Java, etc.)
- Blackberry/iPhone product design and development for education market (Java, Objective C)
- Design and implementation of several XML/SOAP/interchange systems for webservices and industrial purposes (Perl, C#, Java, PHP, Ruby)
- Design and web monkeying for various brochure sites, weblogs, and product sites (PHP, Perl, HTML/CSS)
Embedded software
- Data collection and aggregation for semiconductor manufacturing (C/C++, soft real-time systems, high-availability)
- Scalable manufacturing data transport and conditioning system (C/C++)
- Robust Serial and TCP/IP fail-over systems (C/C++)
Management, consulting, mentoring
- Business and process consulting, project management, focusing on profitability and quality
- Web and UI usability design and consulting
- Team leadership via agile/simple processes, team mentoring, and professional work ethics
- Outsourcing technical project management, managing teams on various continents, focusing on cohesive design and cost control
Talks and teaching
- SEO talk (debunking the myths, for user groups and seminars)
- Regex for fun and profit (Regex basics, and ethical use)
- Little Languages (use of mini interpreters and compilers for thinking in the realm of your product)
Other experience
- Database design (MySQL, Oracle, MS-SQL, SQLite, Xbase, Progress, Postgress)
- Cross-platform development (C/C++, Python, Perl, QT, Boost, Windows, Linux, OSX, Unix)
- Embedded and hand-held development (web-based, C/C++, embedded/encrypted data storage)
- C# Development (WindowsMobile, Windows Desktop UI)
- Build/deployment automation (Wix, Perl, Python, Php, Autoconf)
Education and Memberships
Recent prototypes and research
- HTML5 + Canvas (investigating as Flash replacement)
- CodeIgniter framework variants (looking for Rails/CI alternatives)
- Amazon Web Services data hosting performance measurements
- JavaScript stack machines and code generation (research for a set of online tools)
- NL parsing in Javascript (natural language research for various projects)
Memberships and extended training
- ACM (1999-2008)
- RHEL certification (2003)
Post-secondary
- University of Saskatchewan, BSci (1992-1993)
- UCFC, BSci (1993-1995)