David Goodger
Software Engineer/Architect · Systems Engineer/Analyst · Project Manager · Trainer
Software/Systems Engineer with professional experience in the medical
device industry, the financial sector, and automation/manufacturing.
Experience in project management and training. Recognized expert in
the Python programming language. Extensive experience with markup
languages for documentation, document processing, and data
interchange. Cross-platform systems development experience, ranging
from GUI desktop applications to web services to command-line tools.
Strengths include: effective communication between technical and
non-technical/business audiences, public speaking, excellent writing
and editing skills, thorough and tenacious problem solving.
International experience, with written and spoken Japanese and French.
- Programming Languages
- Python (expert), Lisp, Visual Basic, C, C++, SQL, Bash.
- Development Methodologies
- Agile (Scrum, Extreme Programming), design patterns, refactoring,
TDD/test-driven development, UML.
- Operating Systems
- Linux/UNIX/QNX/Solaris, Windows, Mac OS X.
- Documentation Technologies
- XML, XSL, SGML; HTML/XHTML, CSS; Docutils/reStructuredText;
Unicode; document analysis, DTD design; document data processing.
- Medtronic Inc. (formerly Corventis), Mounds View, Minnesota, USA
January 2013 – May 2020
- Principal Systems Engineer
- Projects: SEEQ mobile cardiac telemetry patch & CareLink cardiac
patient monitoring service.
- Systems & data analysis.
- Software systems requirements development.
- Agile Scrum Product Owner
- Programmer/Analyst
- Developed desktop GUI software for an electronic medical device
system. Technologies: wxPython GUI toolkit, USB communication, web
services, Dropbox integration.
- Independent Consultant, Montréal, Québec, Canada
December 2008 – January 2013
Programmer/Analyst, Trainer, Systems Administrator.
- CDP Capital Inc. (La Caisse de Dépôt et Placement du Québec), Montréal, Canada
July 2005 – June 2012
- Programmer/Analyst
Developed software tools for investment data analysis,
including foreign exchange order management system and index
fund management software. Technologies: Python, wxPython &
tkInter GUI toolkits.
(Full-time employee July 2005 – December 2008; consultant
December 2008 – June 2012)
- Python Software Foundation, remote & Chicago, Illinois, USA
December 2008 – September 2009
- Conference Coordinator
- Chaired the PyCon 2009 & 2008 Python community conferences,
working (mostly remotely) with volunteer organizers and
professional meeting planners. Chaired PyCon 2008 as a
volunteer.
- Member of the Board of Directors
- Elected volunteer (February 2006 – July 2009)
- ELM Machine Service Inc., Cambridge, Ontario, Canada
- Consulting Developer
- Developed a control panel and data acquisition application for
a PLC-based industrial gauge system, using open-source rapid
application development tools (Python, wxPython, Boa
Constructor). Screen capture of application (running on
Windows XP):
https://david.goodger.org/professional/cv/elm_gauge.png
- ATS Automation Tooling Systems Inc., Cambridge, Ontario, Canada
- Systems Administrator & Programmer
- In charge of network and server systems in a mixed (Windows &
QNX) environment, office and production facility with over 100
workstations. Developed engineering data processing
applications & system maintenance solutions.
- Rikai, Ltd., Tokyo, Japan
- President and Founder
- Software development & information technology consulting.
- Uniscope, Inc., Tokyo, Japan
- Operations Manager & Technical Team Leader; Developer
- Project & personnel management; research and development;
analysis, design, and development of document processing,
workflow, relational and object database, intranet, and
internet systems; systems administration (Unix/Solaris,
Windows platforms).
- Embassy of Canada, Tokyo, Japan
- Network Systems Administrator & User Support Manager
- Systems administration, user support, training, programming, &
troubleshooting (150 Windows clients, Unix servers).
- Gunma Prefectural Board of Education (Japan Exchange & Teaching Program), Gunma, Japan
- Assistant English Teacher
- Bachelor of Science, Major in Computer Science
- McGill University, Montréal, Québec, Canada
- Certified Scrum Product Owner
- Scrum Alliance, Minneapolis, MN
- Japanese-Language Proficiency Test
- Japan Foundation & Japan Educational Exchanges and Services, Tokyo, Japan
- Hello World! Computer Programming for Kids and Other Beginners (Manning, 2009)
- Technical Editor
- Python For Dummies (Wiley, 2006)
- Technical Editor
- Python Cookbook, Second Edition (O’Reilly & Associates, 2005)
- Contributor (section 1.23)
- Python Cookbook (O’Reilly & Associates, 2002)
- Contributor (sections 15.4 & 2.3)
- Professional Linux Programming (Wrox Press, 2000)
- Author of Chapter 15, “Python,” a programmer’s introduction to the
Python programming language
- Python in India
- Keynote presentation (PyCon India, Bangalore, India, 2010)
- wxPython I: Introduction to GUI Programming & wxPython II: GUI Programming and MVC
- Tutorials (PyCon 2010, Atlanta GA; PyCon 2008, Chicago IL)
- How to Become an Invited Speaker
- Keynote presentation (RuPy 2009, Poznan, Poland)
- Code Like a Pythonista: Idiomatic Python
- Tutorial (PyCon 2007, Dallas, Texas; OSCON 2007, Portland, Oregon)
- Text and Data Processing
- Tutorial (PyCon 2006, Dallas Texas)