|
Warren Seen |
|
|
Newnham, Tasmania 7248 Australia |
|
-
|
Summary |
|
|
I'm an experienced senior software developer who specialises in web application development using Ruby on Rails.
I hold a Bachelor of Computing with First Class Honours from the University of Tasmania - equivalent to a 4-year BS in Comp Sci in the US college system. Graduating in December 2001, I've been involved in building web applications ever since, although I spent about 4 years in between working for a startup on a much harder problem, how to make the web go faster at the HTTP protocol layer, which involved working on some proprietary compression algorithms and learning far more about the internals of Apache than I ever wanted to know. During 2006 I heard about Ruby on Rails and after watching the now infamous "15 minute blog" screen-cast, I started using both Ruby and Rails in my free time. I picked up a couple of small side projects, and started using JRuby and Rails in our project's internal tools. I left my startup R&D role in early 2009 to focus on Ruby development full-time, and worked with a number of clients as a freelancer/contract resource. In June 2011 I took up my current position as senior developer with Codefire helping to establish our Tasmanian presence here in Launceston. I have 6+ years experience working remotely, with a track record of delivering quality software as part of an agile team. I'm a strong believer in test first development, combining cucumber-style BDD for integration testing with Test::Unit or RSpec for unit-level or functional testing. |
|
-
|
Skills |
|
|
|
-
|
Work Experience |
||||
|
||||
|
Following over two years contracting for Codefire, recruited to a full time position as a senior developer, specialising in web application development using Ruby on Rails.
Significant experience operating throughout the full agile development lifecycle, from user story development, planning, estimation, application development, maintenance and scaling of advanced Ruby on Rails applications for name-brand public and private sector organisations. Interacted with clients, business analysts and user experience designers to realise new features through initial conception, wire-framing, domain modelling database design and implementation. As an experienced developer, working with other team members to introduce and evolve in-house TDD/BDD practices using a combination of unit and functional testing, and cucumber for integration/acceptance tests. - |
||||
|
||||
|
Came onboard for a short-term contract to assist on a suite of new and legacy Ruby on Rails applications, allowing the rest of the development team to focus on new feature work. My role was to take the load off the existing team in implementing bug fixes and minor improvements.
Calling on my previous experience working with legacy projects, I very quickly became familiar with both a new codebase, and new business domain, as well as integrated successfully into the existing team of developers. - |
||||
|
||||
|
Worked on a range of public facing and intranet applications developed in Ruby on Rails as part of an agile development team.
Responsible for both new software development and maintenance of existing deployed Ruby on Rails applications, including retrospectively adding tests to existing applications. Undertook a range of front-end development tasks, including converting static HTML interface designs into functional AJAX UIs using the jQuery Javascript library. - |
||||
|
||||
|
Consulting to various clients in both maintenance of existing code and new development with a range of languages, platforms and environments including Ruby on Rails, PHP, C#, MySQL, SQL Server and Windows Mobile.
Solutions delivered include:
- |
||||
|
||||
|
Programming Lead of a team of 6 developers in 4 countries and across 5 time zones in development and maintenance of a client/server networking application.
As team lead, responsible for gating releases, including merging stable code from development into release branches and ensuring the integrity of the revision control system (subversion). This role provided significant experience in the development and application of proprietary compression algorithms tailored to specific content types. Developed high-performance, portable C and C++ code across Windows, Linux and Mac OS X platforms. Additional in house tools were developed using Java and Ruby for performance monitoring and benchmarking purposes. Experienced in debugging and optimising C and C++ code with GDB, Valgrind and Cachegrind. Conducted a widespread audit on memory usage within the codebase which resulted in increased stability and performance, as well as reduced memory footprint due to the elimination of memory leaks and implementation of safer memory management techniques. Gained a deep understanding of the internal architecture of the Apache web server through development of a number of complex Apache modules. Developed a thorough working knowledge of HTTP, POP3 and SMTP throughout the network stack. - |
||||
|
||||
|
Project-managed and lead the development of a prototype Java peer-to-peer application. Responsible for co-ordinating development to meet project funding milestones, including performing task breakdowns, time estimates and preparing development budgets, status and final reports for funding bodies.
As lead developer, also took responsibility for developing and implementing key protocols and application components. Significant experience in design, development and testing of distributed Java applications. Other projects undertaken involved general web development, including design, development and maintenance of N-tier web applications using PHP, ASP, Microsoft SQL Server, PostgreSQL and MySQL, along with liasing with and support clients, responding to tenders, generating quotations and project management duties. - |
||||
|
||||
|
Working unsupervised, and under broad direction, redeveloped web sites for various departments, including Human Resource, Financial and Business Services, International Services and the School of Sociology and Social Work.
Departmental sites were a mixture of static and dynamic (ASP-based) web pages. Liaison with the University's Office of Web Development and various client contacts was required to ensure that the end product met all requirements whilst adhering to the university's web development guidelines. - |
||||
-
|
Education |
||||||
|
||||||
|
||||||
|
||||||
-
|
Awards and Honors |
|
|
Placed on Dean's Roll of Excellence (Faculty of Science and Engineering) in 1998, 2000, 2001.
|
|
-
|
Honours Coursework |
|
|
Mobile & Ubiquitous Computing, Computation & Functional Programming, Multimedia & Internet Applications and Java Applications.
|
|
-