Résumé
Ryan Green
73 Queen's Road
St. John's, NL
A1C 2A7
ryan at ryangreen dot ca
1 (709) 743-6067
Software engineer with broad experience in a variety of platforms and languages.
Specializing in object-oriented software design, agile development,
unit test patterns, test automation, and interaction design.
Education
2001 - 2007
Memorial University of Newfoundland
Faculty of Engineering and Applied Science
Bachelor of Engineering (Co-op)
Computer Engineering
Accreditation
Registered Professional Engineer with Professional Engineers and Geoscientists Newfoundland and Labrador (PEGNL).
Professional Training
2010
Cooper U (San Francisco, CA)
Interaction Design Practicum
Goal-directed interaction design: Conducting user research, personas, context scenarios, requirements gathering, design patterns and mocking up designs.
Work Experience
July 2007 - present
Verafin Inc.
Software Engineer
- Served as a senior software developer through 8 major releases of a market-leading anti-money-laundering and financial fraud detection product as the install base grew from 50 to 750 financial institution customers.
- Recently performed in a leadership role for a small development team using agile methodologies (Scrum, XP).
- Developed production features for a rich cross-browser, AJAX web application using Java technologies (Java, Java Server Faces (JSF), JDO/Kodo, and related technologies).
- Led adoption of a continuous integration environment, promotion of test-driven development (TDD), and comprehensive unit-test suite (JUnit), as well as performance, scalability, and automated GUI testing - resulting in a significant jump in software quality and development velocity.
- Designed key application interactions following a formal interaction design (IxD) process.
- Developed server agent software for financial data analytics.
- Gained experience with scalable web application infrastructure and development implications on application performance and database scalability in a hosed SaaS environment.
Sept 05 - Dec 22, 2006
International Communications and Navigation (ICAN)
Suite 201, 1118 Topsail Road
Mount Pearl, NL
Software Engineer
- Served as a software engineer for electronic charting systems (ECS) and communication systems for marine applications.
- Developed production-quality software features in C++ (MFC/STL) for existing products.
- Performed analysis, design, and development of a user-interface system for next-generation software products in managed C++/CLI on the .NET 2.0 platform.
- Designed diagnostics utilities for S-57 vector marine charts based on ISO-8211 binary encoding.
- Routinely engaged in high-priority bug fixes throughout all levels of the software and followed error-tracking policies.
- Executed and reported system-level test plans of the software products.
Jan 09 - Apr 21, 2006
Nortel Networks Inc.
3500 Carling Road
Ottawa, ON
Product Verification Engineer
- Served as a verification engineer for a next-generation IP routing platform.
- Established and implemented software tools to improve productivity among the product verification and design teams.
- Performed scheduled execution of simulator-based sanity test suites.
- Conducted formal test plan execution on target hardware and followed error-tracking/reporting procedures.
- Responsible for the communication of latest sanity status and software load quality.
- Worked directly with global partners and managed task coordination and training.
Sept 07 - Dec 17, 2004
Research In Motion Inc.
50 Northside Road,
Ottawa, ON
Software Developer (radio firmware/embedded OS)
- Led an OS-layer software development project for upcoming BlackBerry wireless devices.
- Designed, developed, and tested low-level firmware and operating systems code on target hardware devices.
- Conducted formal testing procedures including network systems emulation testing and device sanity testing.
- Responsible for maintenance and automation of scheduled radio firmware software update patches.
- Gained significant experience working with wireless technologies and networks, specifically wireless protocols and conventions, and gained insight into the wireless business as a whole.
Jan 05 - Apr 23, 2004
Research In Motion Inc.
50 Northside Road,
Ottawa, ON
Software Developer (embedded OS)
- Responsible for design, development, and testing of production level software applications and libraries for several next-generation mobile devices including RIM's BlackBerry devices and the Siemens SK65, among others.
- Gained significant development experience with multiple real-time operating systems, including Symbian OS and proprietary operating systems, on resource-critical embedded hardware.
- Played an active role in the design process as a member of a large scale software project.
- Wrote and tested code within numerous development environments and hardware simulation tools.
May 15 - Aug 15, 2003
Cathexis Innovations Inc.
67 Majors Path,
St. John's, NL
Software Developer
- Worked as a multi-platform software developer in a fast-paced entrepreneurial setting.
- Developed drivers and applications for various Radio Frequency Identification (RFID) hardware devices under the Windows and PalmOS platforms.
- Created software applications and libraries for handheld computing devices, as well as synchronization routines for PC / PDA data transfer.
Sept 2001 - May 2003
ccwebworks
Department of Computing and Communications,
Memorial University of Newfoundland,
St. John's, NL
Web Developer/Programmer (part-time)
- Worked as a member of a team planning and developing internet/intranet applications and large scale web sites.
- Designed and implemented custom web-based applications based on client needs.
- Played an active role in the software design/planning process.
- Designed and implemented databases and database back-ends.
- Worked with UNIX based servers in a multi-user environment.
- Designed graphics and html for web-based user interfaces.
Sept 1999 - Sept 2001
Freelance Web Developer
- Worked developing both static and dynamic web sites for local clients.
- Wrote HTML code and designed graphics for local businesses and schools.
- Managed technical and financial details of hosting and server administration.
Relevant Skills
Languages: Java, C++, C, C#, Objective-C, PHP, Javascript, Perl, SQL
Methodologies: Agile, Scrum, XP
Testing: Agile testing, continuous integration, test automation, xUnit design patterns, TDD
Version Control: Git, Subversion, CVS
Operating Systems: Linux, Windows, Mac OS, iOS
Web: HTML 5, CSS 3, Javascript, browser-dependencies
Interests
- Music technology, digital audio, audio production, live music, cycling, traveling.
Personal Projects
References and academic transcript available upon request.