Contact

Scott K. Ralph, Ph.D.
59 Ridge Drive, Oakville, ON, L6H 1B7, Canada
email:
web: scottralph.org
phone: +1 905 467 3346
Citizenship: dual U.S.A & Canada

Objective

To significantly contribute to and shape development of software at a progressive and forward-thinking company. As a Senior Architect/Principal Scientist, I would leverage my diverse analytical background, with my best-of-breed software engineering practices to deliver effective solutions that significantly contribute to the company’s core business offerings.

Experience Summary

In my roles of a contractor to Fortune 500 companies, and as a Senior Architect/Principal Scientist, I have experience that spans the software lifecycle, including business development, program management, software architecture, team leader, and developer.

Platforms:

Windows 8, Windows 2007, Unix, Linux (RedHat, Ubuntu, Solaris, HPUX, SunOS,)

Methadologies:

Agile, Design Pattern, Service-Oriented Architectures, UML, Test-Driven Development, Extreme Programming, Pair Programming

BigData Ecosystems:

Hadoop, MapReduce, HDFS, HBase, Zookeeper, Pig, Hive, Sqoop

Windows/Dot Net:

.NET Framework 4.5, NUnit, WPF, LINQ, OpenGL, IIS, Web Services, Visual Studio 2013, ReSharper, WCF, C#, MoQ, Team Foundation Server, Git, Dapper, MS Sequel Server Messaging: RabbitMq, Google Protocol buffers

Languages:

C#, C++, C, Java, Javascript, Gosu, Scala, Python

Scripting:

Bash, Python, PHP, Javacscript, HTML, Python, Korn Shell

Databases:

MS SQL Server, MySql, HBase

Application Servers:

MS IIS, Apache Tomcat 7, Jetty

Tools:

VisualStudio, Eclipse, IntelliJ, Team Foundation Server, Subversion, Git, ReSharper, Enterprise Architect

I have consistently used industry best practices for software including:

  • Agile Development,
  • Service-Oriented Architecture for Enterprise Software,
  • Inversion of Control (IOC) Containers,
  • Dependency Injection,
  • Test-Driven Development,
  • Specification by Example,
  • Use of fluent interfaces,
  • Component interface mocking (Moq et al.),
  • Disciplined use of Source Control Management (TFS, Git, ClearCase, Subversion, etc.) tailored to effective release engineering management techniques,
  • Class design using Design Patterns and Effective C++ (e.g. Scott Meyers),
  • Extensive Standard Template Library (STL) use,
  • Doxygen documentation, and XML-based technologies.

    Experience

    Feb. 2013 - present Medavail Technologies Senior Architect
    Mississauga, ON, Canada

    Note

    MedAvail was established from PharmaTrust through recapitalization after bankruptcy.

    Role

    As a Senior Architect, it is my responsibility to design and document architectural and system-level components, their interfaces, analyze use cases, and design database schema for the suite of applications at MedAvail. Establishment of organizational best-practices, designing efficient algorithms, and decomposing roles and responsibilities of software components to reduce overall system complexity, improve system robustness and maximize code re-use are also among my efforts. I report directly to, and work closely with the Chief Architect, and both provide oversight to the other development teams, as well as being very active in the code development, spending at least half of my time developing code as a member of various feature teams.

    Company overview

    MedAvail has developed a kiosk for remote dispensing of prescription drugs to an customer. The pharmacist is remote and interacts with the patient via telepresence involving audio/video link. Inside the kiosk is a dispensing robot that is responsible for choosing the correct package(s), labelling the medication, displaying imagery to the pharmicist to ensure quality control and safety requirements, printing the drug leaflets and other material, collecting payment, and finally releasing the package(s). Additionally there is a large enterprise software infrastructure for the administration of a collection of kiosks for large parmacy chain clients.

    Jun. 2012 - Feb. 2013 Guidewire.com (NYSE: GWRE) Solutions Developer
    Mississauga, ON, Canada

    Synopsis:

    Developer in small agile team for rapidly developing Insurance packages for new lines of business. Completed Guidewire's Commercial Automobile initial offering with XML rating content integration from Insurance Services Office (ISO) Electronic Rating Content specification.

    Technologies:

    Gosu (similar to Scala), Java, Ajile, Pair Programming, JUnit, JBehave, Java, XML, XPath, XSD Schema design, XSLT processing, Functional Programming, Web Services, Database entity design, Test-driven development, Specification by Example.

    Jul. 2011 – Jun 2012 (bankruptcy) PharmaTrust Inc. Sr. Developer / Implementation Architect
    Oakville, ON, Canada

    Synopsis:

    At PharmaTrust I have been active in many facets of the development of their pharmaceutical kiosks: the design and implementation of the UI components using WPF, C#, and .Net; the design and implementation of RabbitMQ message-bus services for various deployed applications; and the integration of new hardware, especially IP video hardware and streaming technologies.

    Technologies:

    Video Streaming technologies, C#, .Net, Windows Presentation Foundation (WPF), Microsoft Workflow Foundation, C++, Java, Visual Studio, RabbitMQ, Google Protocol Buffers, Mercurial Source Control Management, FogBugz.

    Mar. 2011 – Jul 2011 Kulicke & Soffa Software Architect
    Philadelphia, PA

    Synopsis:

    My role at Kulicke and Soffa was to re-architect the existing UI of their wire-bonder products from WxWindows port of their Motif framework, to a Qt based implementation. Additionally the Qt/C++ implementation required integration into their Rational Rhapsody UML modeling C++ code-generation framework and build system. Driving design factors were to optimize bandwidth requirements between the VxWorks and UI host to guarantee UI Responsiveness and usability while still guaranteeing operator workflow.

    Technologies:

    C++, Qt, Rational Rhapsody, ClearCase, CMake, VxWorks.

    Jan. 2010 – Mar. 2011 Algorithmics, Inc Senior Software Engineer
    Toronto, ON

    Synopsis:

    Development of UI and financial modeling components for RiskWatch, a financial modeling application that assess the risk associated with portfolios of financial instruments by shocking them with sets of stress scenarios, measuring the value at risk, and probabilistically valuating the future positions. Much of the GUI development involves updating the legacy Motif application to use cross-platform Qt widgets.

    Technologies:

    C++, Qt, Linux, Visual Studio, CVS.

    Feb. 2009 – Jan. 2010 Arcestra, Inc Senior Software Engineer
    Toronto, ON

    Synopsis:

    Development of a sketch-based architecture modeling tool for rapidly prototyping building spaces for rapid leasing. Part of a rapid-response fast-paced 4 member developer team delivering on aggressive deliverable schedule.

    Technologies:

    C++, MS Dev Studio, QMake, Qt, OpenSceneGraph, Agile Programming.

    Oct. 2008 – Feb. 2009 ALT Software Consultant, Technical Lead
    Toronto, ON

    Synopsis:

    I was technical lead, reporting to vice president of software engineering, of a collaborative project with Optosecurity Inc. to build a next generation x-ray screening machine for detecting/assessing threats, such as firearms and contraband liquids. My responsibilities include the specification and development of algorithms for the geometric analysis of x-ray images to determine object geometries and substance type, and lead 6 person team (ramping up to 10).

    Technologies:

    C++, OpenGL, Linux, multithreaded load balancing, custom GPU development, Design Patterns, Boost.

    Development Environment

    Eclipse (IDE), Subversion (SCM), Log4CXX (logging), CXXTest (unit testing), Agile programming techniques.

    Jan. 2008 – Oct. 2008 RAD International Consultant
    Mississauga, ON

    Synopsis:

    Worked as part of a five-person team of developers, working for Wells Fargo Bank, refactoring and re-architecting a legacy banking application. The single-threaded application was migrated to a client-server application, which involved the separation of business and presentation logic, the use of XML schemas to support socket serialization of objects and the migration from Motif to platform-independent Qt libraries.

    Technologies:

    C++, Linux, Unix-Makefile, Qt, XML, XSD, Log4Cxx, client-server, multi-threaded, Design Patterns, STL, Doxygen, Apache, SAX2 XML Parsing.

    Aug. 2007 – Jan. 2008 Scientific Systems Inc Principal Scientist
    (resigned to emigrate to Canada) Woburn, MA

    Business Development:

    Authored two research proposals for the U.S. Air Force and Navy for the Small Business Innovative Research Program (SBIR)

    Technical Lead:

    For a $1M contract for U.S. Air Force for automating the verification of heads-up displays for F-16 Fighter.

    Technologies:

    C++, C#, Matlab, Computer Vision, Artificial Intelligence, Signal Processing, Statistical Analysis, Machine Learning.

    Jul. 2002 – Aug. 2007 Charles River Analytics, Inc. Senior Scientist
    Cambridge, MA

    Business Development

    Wrote 22 Phase-I and II proposals for various DoD SBIR programs, winning 3 two-year and one 9-month contracts totaling $1.7M. For these efforts I was the technical lead, software architect and program manager overseeing small teams of developers (1-4 engineers), as well as directly developing code.

    Software Architect, Product Development, Technical Lead:

    1. VisionKit
      A general-purpose computer-vision library for developing advanced computer vision applications
      Technologies: C++, Qt, Windows, custom classifiers, data-clustering, image processing, OpenGL, mathematical simulation).
    2. Verideo
      An automated tool for constructing image truth for ATR algorithm verification, and for computing the performance of the ATR algorithms based on a set of developed metrics. Advanced user-interface design using QT iteratively refined from feedback from user studies conducted at AFRL.
      Technologies:C++, Qt, XML, SAX, computer-vision, video-tracking.
    3. SAFER
      A fast and accurate target identification system based on local curvature features. Analysis involved data clustering, PCA analysis, and feature set development for robust target identification.
      Technologies:Qt, C++, PCA.
    4. ETAPP
      A mathematical model for predicting the performance of Automatic Target Recognition algorithms. This work involved the development of image metrics characterizing the intrinsic difficulty of classifying a target in a cluttered environment.
      Technologies: C++, Matlab, multiple-regression models.
    5. FAÇADE
      A genetic algorithm architecture for advanced ATR algorithms.
      Technologies: C++, Matlab, MS Dev Studio, g++, Linux, Qt, XML, Apache, SAX2, OpenGL, AccuRev (SCM), Java, HTML.

    Program Management

    Responsible for defining problem scope with government sponsor, defining functional specifications, defining tasks and project schedule, managing developer resources, developing and conducting mathematical analyses of various data sets, writing reports summarizing the analysis, and giving presentations.

    Jan 2002 – Jun 2002 Giesecke & Devrient, Inc. Computer Vision Consultant
    Acton, MA

    Responsible for re-architecting and refactoring existing code base of real time computer vision inspection system (to inspect various currency notes) to use object oriented techniques, and was technical lead for OO-development. Developed a set of inspection algorithms for new security features of new U.S. currency inspection at Federal Reserve, Bank of Canada, and Taiwan currency.

    Technologies

    SunOS, ClearCase, C++, multi-threaded, real-time O/S, signal processing, machine vision.

    Aug 2002 – Dec 2002 Energid Technologies Inc. Consultant
    Cambridge, MA

    Co-authored SBIR and BAA proposals for Air Force and Homeland Security departments. Developed computer-vision based target tracking algorithms for Energid’s computer vision libraries used by the Air Force Research Laboratories.
    Technologies: C++, XML, computer vision, tracking, CVS, image compression, PCA analysis.

    May 2002 – July 2002
    Jan 2002 – Mar 2002
    Teradyne, Inc. Sr. Software Engineer
    Consultant
    Boston, MA

    1. Developed supervisory control algorithms for 10 DOF material handling robot using C++/COM
    2. Development of diagnostic VB client and user interface front end
    3. Development of computer-vision C++/COM+ objects for Teradyne panel-testing robot. This includes the high-speed measurement of physical properties of the component(s) under test.
    4. Design and prototype development of machine-automation software – a coupling of computer-vision and robot-motion control
    Technologies: C++, OO-Design, machine-vision development, COM+, Visual Basic GUI development, Microsoft SourceSafe

    Jun 1999 – Oct 2001 Cognex Inc. (NASDAQ: CGNX) Sr. Software Engineer
    Natick, MA

    1. Developed Probe-mark inspection software for wafer inspection machines
    2. Development of an automated image database test framework for verification of Probe Mark Inspection software
    3. Development of MFC based image database algorithm verification tool
    4. Development of multi-threaded real-time embedded support for image acquisition software for various frame-grabbers
    5. Designed and implemented custom hardware and software for a system that generated synthetic images and tested frame-grabbers. The system systematically issued hardware triggers to the frame grabber at precise video-timing positions and verified the frame-grabber’s response.
    6. A patent resulted in the above. I was the lead engineer collaborating with the patent attorney
    Technologies:C++, OO-Design, UML, Pharlap RTOS, multi-threaded embedded real-time development, Win2K/NT

    Jun 1997 – Oct 1997 Oak Ridge National Laboratories Graduate Student Research Internship
    Oak Ridge, TN

    Development of real-time computer vision tracking algorithms for autonomous mobile robots.
    Technologies: C++, Linux, computer vision, machine learning, robotics

    Apr 1989 – Sept 1989 (full-time)
    Apr 1988 – Sept 1988 (co-op)
    Apr 1987 – Sept 1987 (co-op)
    Nortel Networks Software Engineer
    Ottawa, ON

    1. High level design and analysis of distributed operating system support for high speed fiber optic transport product
    2. Enhancement and maintenance BNR Pascal compiler and assembler for XMS real-time operating system

    Skills Summary

    1. Extensive C#, Java, C++ experience in Unix and Microsoft Visual C++ environments, as well as COM+.
    2. Objected-oriented design techniques; use of UML; techniques for highly-reusable software such as design patterns
    3. Multilevel-experience spanning low-level hardware interface, library-level development (OEM consumable class libraries with API), and application-level development
    4. Very experienced with multi-threaded real-time system development
    5. Experience with Rational tools, including ClearCase and others
    6. Solid analytical and problem-solving skills
    7. Strong teamwork skills
    8. Excellent writing and communication skills
    9. Embedded/real-time analysis, design and development
    10. Familiar with a number of mathematical packages including Matlab, Mathematica, etc.
    11. Data visualization using OpenGL on SGI workstations

    Awards

    1. 1991 Natural Sciences & Engineering Research Council of Canada Doctoral Scholarship
    2. 1989,1990 Natural Sciences and Engineering Research Council of Canada PGS-2 Scholarship
    3. 1985 Canadian Association of Physicists Award
    4. 1982 Annual H.S. Mathematics Award
    5. 1989 Digital Equipment Corporation Award of Excellence
    6. 1989,1988 Atlantic Accord Career Development Award
    7. 1987 Centenary for Responsible Government Award
    8. 1986 Memorial University Endowment Fund Scholarship

    Publications

    1. Scott K. Ralph , Mark R. Stevens, Magnús Snorrason, and John Irvine, “Evaluation Testbed for ATD Performance Prediction (ETAPP)”, Proceedings SPIE Defense & Security, Orlando, FL (April, 2006).
    2. Scott K. Ralph , Mark R. Stevens, Magnús Snorrason, and John Irvine, “START for evaluation of target detection and tracking”, Proceedings SPIE Defense & Security, Orlando, FL (April, 2006).
    3. Scott K. Ralph, Magnús Snorrason and Camille Monnier, “Model-based target detection and recognition with ladar imagery”, Proceedings SPIE Defence & Security, Orlando, FL (April, 2006).
    4. Irvine, J. M., Ralph, S., Stevens, M. R., Marvel, J., Snorrason, M., and Gwilt, D. (2005) "START for Evaluation of Target Detection and Tracking," Proceedings SPIE Defence & Security, vol 5807. Orlando.
    5. Ralph, S., Irvine, J., Snorasson, M., Stevens, M. and Vanstone, S., “An Image Metric-Based ATR Performance Prediction Testbed”, Proceedings of the Applied Imagery and Pattern Recognition Workshop, Washington, DC (October, 2005).
    6. Ralph, S., Irvine, J., Stevens, M. R., and Snorrason, M. "START: A Tool for Rapidly Generating Image-Truth and Evaluating ATR Performance," Proceedings of WACV. Breckenridge, CO (January), (2005).
    7. "Video Surveillance at Night," Stevens, M. R., Pollak, J., Ralph, S., and Snorrason, M., Proceedings SPIE Defence & Security, vol 5810. Orlando, FL (April), 2005.
    8. “START for Evaluation of Target Detection and Tracking,", Irvine, J. M., Ralph, S., Stevens, M. R., Marvel, J., Snorrason, M., and Gwilt, D.", Proceedings SPIE Defense & Security, Vol. 5807. Orlando, FL (April), 2005.
    9. S. Ralph, J. Irvine, M. Stevens, M. Snorrason, and D. Gwilt, “Assessing the Performance of an Automated Video Ground Truthing Application”, Proceedings of Applied Imagery Pattern Recognition, Washington DC (October, 2004).
    10. "A Scoring, Truthing, and Registration Toolkit for Evaluation of Target Detection and Tracking," Irvine, J., Ralph, S. K., Stevens, M. R., Kenyon, S., Anderson, D. Snorrason, M., and Gwilt, D, Proceedings SPIE Defence & Security, Vol. 5426, Orlando, FL (April), 2004.
    11. "Assessing the Performance of an Automated Video Ground Truthing Application," Ralph, S. K., Irvine, J., Stevens, M. R., Snorrason, M., and Gwilt, D.Proceedings of Applied Imagery Pattern Recognition, Washington DC (October), 2004.
    12. "Interactive Truthing Tools for Moving Platforms and Moving Targets," Stevens, M. R., Ralph, S. K., and Snorrason, M. (2004), Automatic Target Recognition Working Group, Eglin, FL, February 2004.
    13. “Computing Fault Tolerant Motions for a Robot Manipulator,” Scott K. Ralph and Dinesh K. Pai, IEEE Conference on Robotics and Automation, 1999.
    14. Stevens, M. R., Ralph, S. K., and Snorrason, M. (2004) "Interactive Truthing Tools for Moving Platforms and Moving Targets," Automatic Target Recognition Working Group, 2004, Eglin, FL (February).
    15. “Fault Tolerant Locomotion for Walking Robots,” Scott K. Ralph and Dinesh K. Pai, IEEE International Symposium on Computational Intelligence in Robotics and Automation, 1997, pp. 130-137.
    16. “Detection and localization of un-modeled manipulator collisions,” Scott K. Ralph and Dinesh K. Pai, IEEE International Conference on Intelligent Robots and Systems, 1995, Vol. 2, p 504-509.
    17. “Platonic Beasts: Spherically Symmetric Multilimbed Robots,” Autonomous Robots, 1995, Vol. 2, No. 3, pp 191-201.
    18. “Design and Programming of Symmetric Platonic Beast Robots,” Experimental Robotics-IV,Springer-Verlag, 1995.
    19. ``Platonic Beasts: A New Family of Multilimbed Robots,'' IEEE International Conference on Robotics and Automation, 1994, p 1019-1025.
    20. “Approximation Techniques in Complex Reaction Kinetics”, D. Summers, J.M.W. Scott, and Scott K. Ralph, International Journal of Chemistry Kinetics, Vol 19(553), 1987.
    21. “Estimating the Phylogenetic Relevance of rRNA Sequence Characters Using Probabilistic Methods,” BSc. Thesis, Scott K. Ralph, Memorial University Press, 1988.

    Certifications

    1. Oct. 2015
      Introduction to Big Data, The University of San Diego offered through Coursera. (view certificate) [Coursera certificate link]
    2. Nov. 2015
      Hadoop Platform and Application Framework, The University of San Diego offered through Coursera. (view certificate) [Coursera certificate link]
    3. Dec. 2015
      Introduction to Big Data Analytics, The University of San Diego through Coursera. (view certficate) [Coursera certificate link]
    4. Jan. 2016
      Machine Learning with Big Data, The University of San Diego through Coursera. (view certficate) [Coursera certificate link]

    Education

    1999 Ph.D., Computer Science
    Specialization: Robotics
    The University of British Columbia
    Vancouver, Canada

    Area of Interest

    Fault tolerant path planning, simulation, verification, and visualization.

    Dissertation:

    ``A Constraint Based Approach for Computing Fault Tolerant Robot Programs’’ Full Text

    1991 MSc., Computer Science
    Specialization: Computer Vision, AI, Machine Learning
    The University of British Columbia
    Vancouver, Canada

    Area of Interest

    Computer vision, machine learning, neural networks.

    Dissertation:

    ``A Neural Network Implementation for Integrating Discontinuity and Displacement Information’’’ Full Text

    1989 BSc. (honours), Computer Science Memorial University

    Honous Thesis

    “Estimating the Phylogenetic Relevance of rRNA Sequence Characters Using Probabilistic Methods".