This section details the experience of Paul Garthwaite in the field of software engineering.

Please refer to the individual menu entries to see the companies I have worked at.

The following image shows the development of a mobile phone application:


This sort of application can be developed with environments such as Eclipse (for Android applications) or using Apple’s XCODE environment for iPad and iPhone applications.

My Specialities

Although I have experience in all aspects of software engineering, there are some subjects which are my specialities.

One of my specialities is software testing. In recent years, companies have frequently asked me to test their software. One reason for this is because I am a patient person, who can spend several days just testing one particular feature. I also make sure that the feature is implemented according to the software requirements. Unfortunately, it’s often at the testing stage that a project discovers that it’s software requirements are not as good as they could be.

I have many years of experience in unit testing and requirements based testing. Also have experience with testing and validation of software according to the specification DO-178 and MISRA.

Another of my specialities is reviewing software requirements. I have found that the requirements are often the weakest point of the development cycle. This is often the case when the programmers are given the task of writing the requirements. Programmers love to write software, so they tend to do the requirements (and all other documentation) as quickly as possible, so that they can get on with the programming.

Another of my specialities is software quality assurance. I can do code walk-throughs on your software and find the problem areas. I can also use tools such as PC-Lint to analyze the software and find potential problems.

Experience with software tools

Requirements analysis with DOORS and of course with Microsoft Office.

Software design and architecture with UML, using the tools Enterprise Architect, Rational Rose and Rhapsody.

Development environments Visual Studio, Eclipse, Green Hills Multi, etc.

Programming in C, C++, C#, Ada, Python.

Have experience with Ada 83 and Ada 95 for military avionics applications.

Real-time operating systems such as Green Hills Integrity, pSOS, RMOS, EUROS.

Software test environments such as LDRA and VectorCast for DO178B testing.

Software validation and software quality assurance with LDRA and PC-Lint.

Tools for analysis of avionics and mission critical software according to specification DO-178 (DO-178B and the new DO-178C).

Analysis of vehicle software according to the MISRA specification.

Have some knowledge of Matlab and Simulink.

Debugging and testing with Cpp-Unit, NUnit, Rational Test Mate and Hudson.

Configuration management with ClearCase and Dimensions.

Bug and problem report tracking with ClearQuest.

Traceability for “DO-1783 using Reqtify.

Knowledge of internet software such as JavaScript and PHP.

Communications software such as CORBA, Ethernet, TCP/IP.

Tools for creating relatively simple websites, such as this one: WordPress, Joomla, Prestashop.

Experience with the creation of mobile applications (apps) using Intel XDK and Phonegap. This technology allows cross platform mobile apps to be developed relatively easily, without the need to know platform specific programming languages such as Objective-C for IOS. It allows the applications to be developed with the normal web-based tools, such as HTML5, Javascript and CSS. This has the big advantage that all of the web development plug-ins are available, such as jQuery, jQuery Mobile, Dojo, Moo Tools, etc.

If you think I can be of help to your project, I would be happy to hear from you.