Pete Gosling

I am an experienced software developer with a combination of technical knowledge and creative user experience design skills. I have lead a team of 4 web developers and have also acted as a mentor introducing new technologies and agile processes. I like to deliver high quality applications that are well designed and maintainable.


Halliburton Landmark, Calgary July 2010 to March 2014

I worked in an agile team designing and developing a well engineering application. The technologies included C#, WPF, XAML, LINQ, NHibernate, Oracle and SQL Server. I designed and coded new UI concepts and data visualisations. I also added new features to existing C++ and Java applications.

Landmark encouraged developers to learn new technologies including iOS and Objective C (for iPhone and iPad), Android, web technologies including D3.js and HTML5 and distributed version control systems including Mercurial and Git. All the projects used agile processes, primarily Scrum but also Kanban.

Critical Control, Calgary October 2009 to July 2010

I worked on a GIS system for pipeline risk assessment. This used C# and a mix of ESRI and Autodesk GIS Systems. I updated the map display to use AJAX in the web UI, with an option to offer a Silverlight display in the next version of the product. I also designed and implemented improvements to the user interface for a major new web product. I introduced process changes to improve the maintainability of the software, with architectural changes to reduce coupling. I mentored other developers in the use of unit testing, including mock objects, to improve code quality and robustness.

Talisman Energy, Calgary September 2008 to October 2009

I completed a contract to design and develop a new web user interface in ASP.NET with AJAX. The application presented gas well and seismic data from a variety of sources including databases, document management systems and web services. This included a map display using Autodesk mapguide on the front end and ESRI ArcServer on the backend. I worked closely with end users to design an improved user experience for the application. I also introduced agile tools and techniques. During this time, I also gained experience with Silverlight.

Demand Data Services, Calgary

April 2003 to August 2008

I was a senior developer responsible for the design and coding of .NET applications using C#. These oil and gas applications include a graphical smart client communicating with ASP.Net web services and J2EE / Oracle on the server via XML. The application features included production optimization, document management and pipeline risk assessment. I also designed and developed the UI for an ASP.NET application using AJAX to make it more responsive. My duties included working with customers to identify user stories, designing user interaction and workflow. My programming work included smart client development using Visual Studio, .Net, Windows Forms, C# and Resharper. For server side web development I used ASP.Net, web services, Java and JSP. For client side web development I used XHTML, CSS and Javascript. My work included adding a GIS web service to deliver map layers to the smart client and adding reports using SQL Server Reporting Services.

I used a variety of technologies: C#, .Net, ASP.NET AJAX, SQL, ADO, NHibernate object relational mapping, web services, ANT, NANT, XML and XSL. We used CVS with HOP for continuous integration. I have strong skills in object oriented design and coding and I applied these to write code which is effective and maintainable. I worked with a variety of 3rd party libraries and open source tools including Crystal Reports, Infragistics, Sharpmap and others. I also have practical experience applying software patterns, and I used these to improve the quality and flexibility of the product.

In 2003, I successfully encouraged the company to adopt .Net for the 2nd generation smart client. I also introduced unit testing and test driven development (TDD) using NUnit. I lead the introduction of AJAX into the company. I have mentored junior staff on UI development and Test Driven Development, and acted as technical lead on sub-projects.

I encouraged the development team to use patterns and refactoring to improve the architecture of the product.

Autodesk, Calgary November 2002 to March 2003

I was working on contract for Autodesk, extending and enhancing a software test harness for a major commercial GIS system, using Java, EJB, servlets, JSP, JUnit and SQL. The development and production environment included WebLogic, J2EE, Tomcat, Oracle and VSS. I also worked with Business Objects, SVG and Crystal Reports.

Wireless Edge, Calgary April 2001 to November 2002

Wireless Edge creates multi-platform wireless Internet solutions. I was employed as a Senior Software Developer, responsible for design and development of web applications. This included capturing customer requirements, as well as developing applications, with a special responsibility for user interfaces. I contributed to architectural design, working with the CTO and other developers. We used an agile development methodology that emphasized object modelling, refactoring, daily builds and testing.

I usually worked with Java (J2EE, J2SE, JSP, JSTL, JSF and Struts) plus XSL and XPath to compose XML data from SQL databases, and output HTML and WML. My server side development experience includes Java, EJB, SQL, JSP custom tag coding and servlets. My client side work involves (X)HTML, WML, J2ME, Swing, VoiceXML, Javascript, CSS and Macromedia Flash and graphics preparation.

The development platform was Apache / Tomcat / JBoss on Windows or Linux. I have also used ASP, ADO and SQL Server 7 under IIS 5, as well as Oracle, WebLogic and MySQL.

I used a broad range of tools, including JBuilder, Eclipse (originally from IBM WebSphere Studio), Ant, various wireless IDEs, Dreamweaver Ultradev, XML Spy, Visual Interdev, Macromedia Fireworks, Flash, Visio (for Use Cases and Sequence Diagrams) and version control systems (CVS and VSS).

I also conducted usability trials to evaluate designs, and act as a technical adviser to our customers' product managers on user interface issues, including communications with OEMs such as Samsung and strategic partners such as Openwave.

Mpower Technologies Inc, Calgary

March 2000 to April 2001

I was responsible for web application development for desktop PCs, PocketPCs, Palm Pilots and WAP phones connecting to corporate portals and legacy applications. I used HTML, XSL, CSS, Javascript and JSP to present common XML data on any device. I was the technical lead for three other web developers during these projects.

British Aerospace, Lancashire, England

Feb 97 to March 2000

At British Aerospace I was employed as a User Interface Specialist. My responsibilities included user interface design for aircraft display systems as well as software development for engineering applications. I organized and ran evaluations with fighter pilots, using video data capture, system data logging, verbal transcripts and debriefing to collect feedback and assess user interface designs. Throughout 1998 I was responsible for prototyping a new interface for a geographic application that was already under development. I used Rational Rose to analyse and model alternative interaction concepts, and C++ for prototype implementations. I gained experience with MFC at this time. In addition to my work with aircrew, I also developed applications for use by engineers using a variety of intranet and database technologies using HTML, JavaScript, VB Script, CSS and SQL. My development work included analysis, design and programming of GUI user interfaces for Windows and Unix with C++ and UML (using Microsoft Visual C++ including ATL, ActiveX, MFC and Win32 API, Visual Basic Borland C++ Builder and Rational Rose). I also managed a small number of interns and junior staff during this period.

Human Engineering Limited, Bristol, England

Oct 92 to Feb 97

I was employed as a senior consultant specializing in user interface development and usability assessment. I designed, developed and deployed a health and safety database in Borland Delphi for a client, gaining experience in object oriented programming. The application combined database spreadsheet and graphical views of the data. I developed a multi-media information system used in the control rooms of a large petrochemical plant. I was involved in round-the-clock field observation of the plant workers to collect data and opinions on work patterns. I was also responsible for the prototyping and usability testing of an interface for a transport system, using SuperCard on Apple Mac. This work involved usability trials with train drivers. A related project included data collection from members of the public at railway stations and on trains.

Centre for Human Sciences, Farnborough, England

May 85 to Oct 92

I was involved in customer requirements capture, user interface prototyping and usability evaluation for navigation and map displays, using Visual Basic and SuperCard for Apple Mac. I took part in a number of field and simulator trials, initially as an assistant and later as the lead. These involved extensive data collection in the field, with tank crew and infantry. During this period I learned how to combine observation, interview and data capture to collect objective and un-biased information from end users. I was also responsible for development of data collection and analysis software for hand held computers and PCs, using BASIC.


MSc Human Factors (User Interface Design and Human Computer Interaction), University College London, Graduated: 1990

HND in Computer Science, Farnborough, England. 1986 - 1989

References available on request