Profile
My background is as a software developer with an education from the University of Waterloo. I pride myself on being on top of the latest things happening in the computer industry and the internet. I enjoy working on challenging technical problems that require unique and creative solutions.
Education
- 2002 – 2005
- University of Waterloo
- Bachelor Of Computer Science (BCS) Honours
Work Experience
- 2010 – Present
- Software Developer – Redfall Technologies Inc., Calgary AB
Redfall Technologies is a small business Developing Web based financial services.>
Responsibilities
Program and support a Groovy on Grails based webservice automated clearing house (ACH) for cheque and EFT processing. It is the backbone service that has been developed to launch other businesses off of in the future.
Develop and support Groovy on Grails web applications for rent collection and invoicing services. Included most aspects of web development - Javascript, HTML, CSS, Groovy backend, API design, database integration/SQL etc.
Design and program iPhone and iPad applications in Objective-C. One of these interfaced with credit card reading hardware device and the other is an interface to the the web services provided by vogogo.com
Technical Environment
Linux servers and desktops for development and production machines. Primary Groovy and Grails development is done with VIM and command line tools but with Intellij for debugging. PostgreSQL is the main DB used for testing and development. Extensive unit and integration tests are maintained to ensure that code regressions are minimized.
- 2006 – 2010
- Intermediate Software Developer – Connor Clark And Lunn Financial Group, Vancouver BC
Connor Clark And Lunn is a medium sized business of approximately 250 employees in the Financial Services industry. They manage approximately $36 billion in assets for clients.
Responsibilities
Program and support applications for the quantitative equity team along with a small group of three other developers. We manage approximately 100,000 lines of Java code across 20 applications. Development is primarily done in Java, but included some Excel VBA, and Q (KDB database). The proprietary software was a highly complex collection of tools and reports to get data from data providers, analyze stocks and produce and optimize the buy/sell orders which the traders executed.
I also support the trading systems by managing software they use to place orders as well as post trade processes. This is primarily advanced Excel VBA code and spreadsheets, VBScript, PowerShell and SQL. Part of this support role was being at the office at 6am before the markets opened to ensures systems were operating.
I worked with the business users to design solutions, develop testing procedures and coordinate deployments
Projects
A few of my bigger projects include
- A flexible charting tool for analysing time series data from the database
- Many loaders for parsing data and getting it into the database
- Major project of converting from legacy database to KDB+
- Performance and Attribution tools
- Supported trading applications: Bloomberg, Moxy, Triton, FIX, Thomson One
- Supported and maintained advanced inhouse Excel Spreadsheets
Technical Envrionment
Primarily development was done in Windows with Java using Eclipse IDE for Equity related projects. Recent development favored writing code at the database level in the q language for the KDB+ database which is highly specialized for time series data. There were also several complex Excel spreadshhets with extensive VBA code. We had been rewriting the existing VBScript code into PowerShell. Trading systems made use of MSSQL
One of my side projects was MySQL based logging server and web interface running on two Linux machines. The website was written in PHP.
- 2006 – Present
- Director – Halotis Inc. - Calgary AB
Responsibilities
Program iPhone Games in Objective-C with the cocos2d game engine
Launched a website Automatic Blog Machine to help automate the steps required to install, configure and automate a blog. There are several customers using this service right now. The site is developed in Python with Django - front end design and backend were all designed and programmed by me.
Part-time work for my own HalOtis Inc. business. I created and designed over 30 unique websites and focused primarily on promoting CPA (Cost Per Action) and affiliate sales. I maintain a internet marketing and software development related blog at halotis.com as well as a personal blog at mattwarren.name. I wrote a short ebook and all the content/sales materials for runtoloseweight.com.
I actively maintain Google Adwords campaigns using the Adwords Editor and several self developed Python scripts.
Some of my more useful projects have included promotional scripts for automating blogs, scaling up and organizing Google Adwords campaigns, monitoring and scraping websites, and automating Twitter accounts.
Taking on the occasional contract position for web development work. HTML development, Server setups, light graphic work, wordpress plugin development, email marketing setup and other assorted things.
Technical Environment
Development is done in a mixed Mac OSX/Linux/Windows environment primarily with PHP and Python. Some HTML, Javascript, CSS was hand-coded using my editor of choice: VIM.
- May 2004 – May 2006
- Software Engineer – Department of Fisheries and Oceans, St. John's NL
Responsibilities
Help researchers with the analysis of data by writing tools to help visualize it.
Automate processes
Administer the environment, make technology recommendations, and advise on purchasing decisions
Projects
Designed and wrote a graphical application in Java to analyze raw data from deep ocean probes. The final result was a program that was used by several people in the department to evaluate and work with the data.
Also, I worked on an ocean forecasting system. It was a concurrent and parallel mathematical process that was distributed over several Solaris machines. It required writing Unix scripts to procure data from international partners. MatLab code to analyze satellite, radar, and other data. I helped debug the modeling code written in Fortran, wrote automation scripts and displayed generated charts and graphs on a website. I deployed a wiki, FTP server, set up apache for a web server, and administered a mixed Windows/Linux/Solaris environment.
Another project I worked on as lead developer was an application written in MatLab to predict drift patterns of objects in the ocean to be used by the coast guard to locate people lost at sea.
Technical Envrionment
Mixed environment of Windows, Linux and Solaris. Development was all done on Linux using MatLab, Java and Python
Proficiencies
- Programming (years of experience)
-
- C/C++ (3 years) - I wrote a real-time operating system from scratch in C
- Objective-C (5 months)
- Java (6 years) - Primarily system processes and Swing based GUI applications
- MatLab (2 years)
- Python (3 years)
- HTML (5 years)
- PHP (1 year)
- Q/KDB+ (1 year)
- Bash, Perl, Javascript, jQuery
- Applications & Operating Systems
-
- Linux - Using Linux since 1997. Several different distributions and have configured both servers and desktops. Linux is my preferred development environment
- Windows and Mac OSX proficient.
- Experience in Eclipse + Pydev, and TextMate.
- Experience with Adobe Photoshop.
- Internet Marketing
-
- Google Adsense.
- Google Adwords Experience.
- Proficient with Google Analytics.
- Completed John Reese’s Traffic Secrets 2.0.
- Completed Jeff Walker’s Product Launch Formula 2.0.
- Completed Ed Dale’s 30 Day Challenge.
- Completed Frank Kern’s Mass Control.
Personal Interests and Achievements
- 2009
-
- Training for a Marathon and several Half-Marathons.
- Open Soucre Projects
- qpy - Python interface to KDB+ database
- halotis-collection - Collection of web and internet marketing scripts
- My interests include biking, skiing/snowboarding, Linux, piano, drums, and motorcycles.