Post Job Free
Sign in

Software Engineer High School

Location:
Australia
Posted:
November 23, 2012

Contact this candidate

Resume:

Resume of Shane Harper

Mobile Phone: +** (0-439******

E-mail:

http://shaneharper.net

Date of Birth: 24 July 1975

Nationality: Australian

Address: */**** ********** ****, *********, Victoria, 3175, Australia

Profile

Proficient software engineer experienced with numerous real-time (including safety critical) applications. Focused on establishing clear objectives and then rapid delivery. Exposure to the complete software life-cycle with an emphasis on software quality.

SkillsTest Driven Development to quickly build software to requirements and to demonstrate via automated tests that the software performs as expected.Excellent time management, team work and

communication skills.Talented in object oriented design.

Appreciate formal methods of software

engineering, with exposure to the Capability Maturity Model (CMM).

Talented C++ developer. I have extensively used the STL.I have also written computer programs in Ada,

Assembly (80x86, HC11, Z80), C, Haskel, Java, Perl, PL/SQL, Prolog, Python,

and UNIX shell scripts.Skilled in electronic circuit

construction.Able to design and implement embedded

micro-controller systems.

Achievements

Seeing several large mission-critical software projects through to a timely completion!

Achieved the second highest result in the

Melbourne University final year Computer Science subject "Operating

Systems" in 1997. That subject covered low-level implementation issues and

focused on Unix.Winner of a Shell Science Fellowship Award

in 1992 for my work with a computer controlled brush-less DC motor. I

received a prize including the opportunity to represent Australia at the

Singapore International Youth Science Conference.Awarded a Speech Night Award for Scientific

Inquiry while attending Melbourne High School.Awarded `Half Colours' for my involvement

in High School Debating over several years.Organised a race for electric powered

vehicles for the Australian Electric Vehicle Association. This was a

large-scale event with many competitors from Victoria and interstate. I

recruited and managed a large group of volunteers for pre-event

preparations and on-the-day duties. I arranged sponsorship, advertising,

trophies and prize money, programme production and printing, venue hire,

catering, commercial exhibitors, liaison with schools and the State

Transport Department, etc.Participated in club-level cycle racing for

a period of time, and was a place-getter on several occasions.

Employment15 December 2011 -

Employer:

Position: Software Engineer

Technologies: Embedded C++, Linux, Mongoose web-server, Selenium Webdriver, Python, wxWidgets

Experience:

I applied agile techniques to develop a web-based inventory tracking system for biobanks. I developed a software development plan to conform with the IEC 62304 standard for medical device software. I captured requirements in executable test scripts and applied a test driven development approach. I wrote the high-level software design in a machine executable format.

Development was done primarily on Mac OS X. Cross platform libraries were used.

21 July 2009 - December 2011

Employer: Lockheed Martin Information Systems and Global Services

Position: Senior Software Engineer

Technologies: C++, Python, Java, vxWorks RTOS

Experience:

I performed requirements capture, software design and implementation, and testing of a safety critical component of the

developed for the Australian Rail Track Corporation.

July 2009 - February 2010

Software design and implementation in C++, Python and Java of the AMS (Authority Management Server).

The AMS manages authorities that allow trains to move along specified routes. It is a safety critical interlocking preventing unsafe requests being sent to trains and trackside equipment.

March 2010 - December 2011

Responsible for the requirements specification document of the AMS component.

I used UML2 for requirements capture. I used DOORS for maintaining the requirements trace. I followed CENELEC standards for developing safety critical rail systems.

October 2010 - March 2011

I lead a team of two software developers to develop a parallel implementation of the Authority Management Server in C++.

The software could be deployed to run in parallel with another implementation: The outputs of both systems could be cross checked to increase confidence in system safety.

My implementation cost one fifth that of an implementation by another team while satisfying the same set of requirements. I used TDD (Test Driven Development) and I believe the use of TDD significantly helped in dramatically minimising the time to develop a high quality implementation.

I developed the embedded software to run continuously without human intervention to ensure the safety of the rail network.

I followed the MISRA (Motor Industry Software Reliability Association) 2008 guidelines for the use of C++ in critical systems. I wrote automated test scripts in Python. The target platform ran the VxWorks real time operating system.

I implemented communications protocols on top of TCP/IP to enable the AMS to communicate with the other systems components.

October 2011 - December 2011

Development of automated test scripts using Robot Framework for testing the AMS.

19 July 2008 - 18 October 2008

Employer: UFIS Airport Innovation, Barcelona, Spain

Position: Software Analyst

Technologies: C++, Perl, Python, Oracle PL/SQL

Experience:

A 3 month contract where I was responsible for completing development and testing of external software interfaces to a baggage handling system for Barcelona Airport's Midfield Terminal which was opened in 2009.

I worked on-site in Barcelona, Spain for UFIS Airport Innovation which is a daughter company of UFIS Airport Solutions, a company that I was previously employed by.

The project had very tight deadlines: I had to quickly get up to speed and then consistently work long hours.

I worked with C++, Perl, Python and Oracle PL/SQL as the application and automated tests had already used a mixture of these languages.

At the end of my contract I was offered another three month contract to do further work: I had to decline as I was unable to get my visa extended at short notice.

My son was born after I finished this job. I took time off work to be with my wife and son.

4 February 2008 - 3 May 2008

Employer: (South Melbourne, Australia)

Position: Software Analyst

Technologies: C++

Experience: Bluefish444

develops hardware and software for video capture, video processing and

playback. Bluefish444's customers include television broadcasters and the film

industry.

I audited their core video capture application and their hardware drivers. I developed a

strategy to improve quality by setting up automated tests to ensure quality.

9 October 2006 - 30 November 2007

Employer: UFIS Airport Solutions GmbH (Graz, Austria)

Positions: Master System Integrator, Suvarnabhumi Airport, Thailand

System Architect, Delhi IGI Airport, India

Experience: UFIS Airport Solutions

develops software for managing airport operations.

UFIS Airport Solutions also provides management consulting to airports.

For a large airport to operate efficiently, the operations of several

departments must be coordinated and typically IT systems from several different

suppliers must be integrated.

In my work at the airports in Bangkok and Delhi, I first sought to get a clear

definition of requirements through direct interaction with the clients and then

developed an architecture that met the requirements.

Much of this work involved integrating systems from different

suppliers.

I left UFIS as I wanted to return to Australia after having lived away from Australia for six years.

February 2006 - 16 June 2006

Employer: ABES ("Advanced Bridge Engineering Systems") GmbH (Graz, Austria)

Position: Contract Software Analyst/Developer

Technologies: C++, Qt, OpenGL

Experience:

I was employed on a short term contract to design and implement the GUI of a CAD (computer aided design) application for specifying the geometry of bridge girders and piers. I used C++, Qt and OpenGL to implement the user interface.

The customer had had preconceived ideas about how the application should

function based on their experience with a competitor's product. After carefully

analysing the customer's requirements I was able to propose a solution that

better met their needs: In particular the final design was easy to extend.

17 November 2003 - 29 July 2005

Employer: Systems In Progress GmbH (Graz, Austria)

Position: Software Analyst/Developer

Technologies: C++, Java, PostgreSQL, wxWidgets, SDL

Experience: Systems In Progress's

products collect and process usage data from casino gaming machines

and maintain casino jackpots.

I developed a multimedia casino jackpot display using C++ and the SDL (Simple Direct-media Library) that would display jackpot values and play video files and animations.

I developed tools for generating reports from usage data from gaming machines as well as for tracking coin collections. I used C++, Java, the PostgreSQL database, wxWidgets GUI

library, SDL (Simple Direct-media Library), and the Subversion

revision control system.

7 January 2003 - 6 November 2003

Employer: GmbH (Graz, Austria)

Position: Software Engineer

Technologies: C++, wxWidgets, TCL

Experience: TDV write structural analysis

software. The main application of TDV's software is bridge design.

I extended the GUI for specifying the geometry of bridges. The GUI was written using wxWidgets. I also interfaced the main application with the TCL scripting language enabling bridge geometries to be defined in TCL.

The development environment was Microsoft Visual Studio.

22 April 2002 - 7 November 2002

Employer: Atronic International GmbH (Austria)

Position: Embedded Software Engineer

Technologies: C

Experience: Atronic International make casino

slot machines.

I worked in a team of eleven people

re-implementing existing software: Our goal was to make a new system

which was easier to maintain than the old system. The software was

mostly written in C, but was object oriented.

ArgoUML was used to create some designs

in UML. Rational ClearCase was used for revision control.

The target platform ran the Micro-C RTOS

on a Z180 CPU.

February 2000 - 13th July 2001

Employer: Thales ATM

Position: Software developer

Technologies: C++, Ada

Experience: Thales ATM make air-traffic control

systems. I had several different roles while working at Thales ATM.

My first role involved writing Unix

shell scripts to set-up and install software for an air-traffic

control system used by the RAAF (Royal Australian Air-Force). I had

to be on-site for part of the time and interact with the customer.

My second role was adding new

functionality to the flight plan database management code. This was

done in Ada.

My final role was working on the user

interface for an air-traffic control system to be used in China. Some

of my work was fixing bugs in existing C code. Most of my work was in

a re-write of the "Air Situation Display" function in C++. Our new

design was developed using Rhapsody by Ilogix.

Rhapsody is a UML model editor which can generate code

from state diagrams.

Development was done on Linux PCs. The target platform was

Ultrix.

Thales ATM used the CMM (Capability

Maturity Model) to assess their software development procedures and was focused on improving

the quality of its products by improving the procedures used.

I left Thales ATM to do some international travel and to have time

to work on some Open Source projects.

August 1997 - February 1999

Employer: AES Prodata, now called "ERG Transit Systems".

Position: Analyst Programmer

Technologies: C++

Contract Renewals: Three. (I had two three month and two six month

contracts to work at AES Prodata.)

Experience: C++/UNIX programmer writing and

maintaining code for the Metcard automated ticketing system used by

the Melbourne public transport system. The software I worked on

communicated with ticket selling machines, ticket validating devices

and a central computer system. An important function of this software

was to generate reports about ticket sales.

The project was behind schedule when I started. I believe I made a

significant contribution to getting the customer to sign-off the

project as being completed as early as possible.

Development and some testing were done on Linux PCs. The target

platform ran SCO-Unix.

I gained experience in using GNU tools (including the gcc compiler),

writing makefiles and shell scripts, and revision control with CVS.

I left AES Prodata to return to full-time University studies for a

year.

Christmas Holidays 1996

Employer: K&B Pty. Ltd.

(family company)

Position: Technician and Director

Experience:

as Technician: assembled computer systems, performed trouble-shooting and

repairs.

as Director: attended Board meetings, participated in formulation of

company policies/strategies, ensured that statutory

requirements were met.

Christmas Holidays 1991 & 1992

Employer: Ranger Electronics

Position: Technical Assistant

Experience: worked with CAD (Protel AutoTrax), made

and assembled circuit boards, calibrated gas concentration meters,

programmed PLCs.

Samples of My Work

See my web-site: http://shaneharper.net

EducationSecondary

1990-1993 Melbourne High School

Final year subjects: Maths: Change

and Approximation - Extensions, Maths: Reasoning and Data, Physics,

Chemistry, Information Systems, English.

Victorian Certificate of Education (VCE)

score: 158 out of 168.Tertiary

1994 - University of Melbourne

Course: BSc / BE (Elec).

I was enrolled in the BSc/BE course

for four and a half years. The computer science component (only) of

this course was completed by mid 1997.

300-level computer science subjects

and results:

Software Engineering Project 76%

Software Engineering 3A 75%

Operating Systems 93%

Professional Issues in Computing 79%

Database Systems 76%

Theory of Computation 70%

Artificial Intelligence 75%

Functional Programming 82%

Leisure InterestsSporting activities, including: going to the gym, cycling, skating,

badminton.Computers, including contributing to open-source projects.

Languages

Last update: 28 August 2012



Contact this candidate