The following profile is a member of IT Consultants Direct "ITCD".
http://www.it-consultants-direct.co.uk/
  This candidate can be contacted via the following link:
mailto:candidates@itcd-group.co.uk?Subject=GA00048S
  The ITCD candidate database can be searched at:
http://www.it-consultants-direct.co.uk/search.html
  Please note that you will need to register with us before direct contact with any candidate can be arranged. This is to protect both the candidate's privacy and yours. Registration is free and without obligation. We are registered under the data protection act and the data we hold is for our own internal use only, we do not share this data with anyone outside of ITCD unless required to do so by law.
 

MSc MBCS IENG MIEE 

A professional software developer holding a masters degree in Computer Science, with experience in Object Oriented consultancy, analysis, design & programming and having a significant track record of delivering within projects timescales including; real-time embedded environments, UNIX, Microsoft Windows and Relational Databases business applications covering the full life cycle of software development. 

Key Skills & Experience:

8+ Years:

Assembler, C++ (90th percentile in the ‘Psychometric Inc C++ Proficiency Test’), OOA, OOD, OMT, UML

8+ Years:

Embedded, threading etc. real-time Operating Systems (OSE, RTKernel, ZINC, iRMX), UNIX, M68k family, Intel x86 family, Hitachi H8/SH1/Sh2/SH3, PIC

8+ Years:

Compilers - GNU, Microtec, Sun/ SPARC, Microsoft Visual C++

7+ Years:

Microsoft Windows – Win98, Win NT4, Win 2000, MFC, Microsoft COM+, DCOM, ActiveX, ATL, Win32

3+ Years:

JAVA, Capability Maturity Model (Level 3-4), SQL Server, TCP/IP, CVS

1+ Year:

Standard Template Library (STL), Visual Basic, PERL, JAVA v2, DSDM, Rational Rose, Magic Draw, Artisan, C#, DOD2167A

Industries:

·         Defence

·         Telecommunications

·         Retail

·         Software / Integration Houses

·         Research Associations 

Qualifications:

·         Master of Science, Computer Science (University of Hertfordshire)

·         Corporate Member British Computer Society & the Object Oriented Special Interest Group

·         Member of the Institute of Electrical Engineers

·         Open university MSc modules M874 (Java Networking) & M878 (Object Oriented Software Engineering)

·         British nationality/Passport holder 

Company: [snip], Suffolk

Duration: November 2003 –  September 2004

Position Held: Senior Analyst Programmer          

Key Responsibilities: To provide expertise in the analysis, design, implementation and roll out of POS software, working with both legacy and new components using all appropriate techniques such as UML. Platforms range from Windows 2K PC, SQL Server through to Linux embedded under kernel 2.4.x.

Technical Expertise:  C++, C#, JAVA, real-time, embedded.

People Management: Liaison with internal & external consultants, hardware engineers, production & director level management.

Key Contributions:  To provide technical expertise on a wide variety of platforms for mission critical applications as part of a multi-disciplinary team. 

Company: [snip], City of London

Duration: October 2002 – March 2004

Position Held: External security consultant                  

Key Responsibilities: To provide security consultancy for the company’s secure beneficiary payment system. Delivering a report (100 + pages) with security recommendations on the use of third party PKCS libraries and other aspects of the environment using smart-cards. Use of asymmetric keys for a beneficiary payment system which is now in daily use. Approved by [snip] security to provide the official oversight when building the product. Additional documentation added by reverse engineering the source code to UML notation with the aid of a CASE tool, programming in C++.

Technical Expertise: Security & Public Key Infrastructure, Visual C++ application development, PKCS#11 (tokens) library usage.

People Management: Liaison with external consultants, third party project management, [snip] security manager.

Key Contributions:  To provide a technical report on the susceptibilities of the company’s beneficiary payment system, review of the coding practices & adherence to company standards in addition, review the application against the design specification. Also identified as external code reviewer and sole oversight of the product build phase. 

Company: [snip], Milton Keynes, and [snip]

Duration: August 2002 – Date (part-time contributor)

Position Held: Volunteer contributor to the open source project; office assistant at the charity’s head office.                

Key Responsibilities: Contributing to the DotGNU Portable.NET open source NET framework CLI (Common Language Infrastructure) project as a developer. Also using Visual Studio .NET, C#  and XML on a variety of experimental developments in conjunction with a consortium. Assisting at the head office of a charity, IT strategy support for a variety of small organisations.

Technical Expertise: Understanding of the CLI, general programming language techniques.

People Management: Working with a broad range of people to assist their aims in bringing self sufficiency to poor countries, interfacing with novice users, helping with their IT strategy.

Key Contributions:  Generally aiding of bug fixing and testing of PNET, technical implementation of tasks. 

Company: [snip], Welwyn Garden City

Duration: January 2001 – April 2002

Position Held: Developer with real-time embedded C++ knowledge

Key Responsibilities:  Member of the Office Developments Products World Wide Development group. Enhancing an embedded OO designed real-time event driven multi-threaded environment & GUI (ZINC OS) for M68332 target, programming in C++. Responsibilities included adapting the RT OS task switching for low level interfaces, adding new features to the product (a digital Fax/Scanner/Copier/Printer) for product roll out. The development process (under CMM) included estimations using the ‘Delphi’ method and then designing with UML methodology (using ARTISAN as the real-time modelling tool). Responsibilities included providing utilities for a ‘new/delete’ memory management logging utility and also providing a scheme for reduction in system emergency events. Additionally, developing a set of PERL utilities for debug dump analysis. Other responsibilities involved liaison with Test and Configuration Management groups to achieve the most effective software release and also deciding on service maintenance packs contents. All the above included interfacing with the company’s multinational development teams (e.g.USA, Japan, Singapore, P.R.C.).

Technical Expertise: Knowledge of real-time operating systems, C++ in both an embedded and UNIX environment, UML modelling, make environment, UNIX shell scripting and tools.                                                

People Management: Working as part of a team of 85, sharing of information, liaison with product release, audit, test, systems, software process improvement, configuration control personnel & line management.

Key Contributions:  Adapting existing legacy code (mainly ‘C’) to an Object Oriented C++ class based design. Given task outline, rejected conventional approach using ‘sed’, ‘grep’ etc and instead took up PERL for the first time. Constraints were to work within the existing framework to regenerate code to wrap procedural based as class based using PERL scripts. Resulting output consisted of new class and header files. 

Company: [snip], Cambridge

Duration: September 2000 – January 2001

Position Held: Developer with comms, JAVA  & Visual C++ expertise                                     

Key Responsibilities:  Specified, designed and coded a TCP/IP VoIP demonstrator for a Cambridge consultancy using UML, H323, Visual C++ and proprietary hardware such as QuickNet PCI cards and other third party software as required, programming in C++. Some of the technologies used: MAPI, NetMeeting, TCP/IP, OpenH323, gatekeepers, Multipoint H.323. Successful completion of a working application allowing any user to phone other parties without knowledge of their exact location.

Technical Expertise: Expertise in MAPI, H323, VoIP, building robust Windows applications, working to strict deadlines.

People Management: Liaison with technical director and other teams.

Key Contributions: Took over and completed writing of the specifications, developed a model under UML, built the application, integrated diverse hardware and libraries to achieve a working demonstrator with the planed timescales. 

Company: [snip], Milton Keynes

Duration: May  2000 – August 2000

Position Held: Developer with DCOM expertise                                           

Key Responsibilities:  Converted an existing stand-alone SMS application into a COM+ based system for rollout in their Germany operations, programming in C++. Working on initiative, without design specifications to integrate with 4 other modules, which were developed and completed on time.

Technical Expertise: Visual C++, COM/DCOM+ component development and deployment.

People Management: Liaison with technical director and other teams.

Key Contributions: Achieved the integration of the new code with existing modules on time, fixed miscellaneous bugs in the code base. 

Company: [snip], Welwyn Garden City

Duration: September 1998 – April 2000

Position Held: Developer with real-time embedded C++ expertise             

Key Responsibilities:  Member of the Office Developments Products World Wide Development group (85 head count).  Enhancing and debugging an embedded OO designed real time event driven multi-threaded environment & GUI (ZINC OS) for M68332 target, programming in C++. Adding new features to the product (a digital Fax/Scanner/Copier/Printer) for product roll out. The development process (under CMM) included estimations using the ‘Delphi’ method and then designing with UML methodology (using ARTISAN as the real-time modelling tool).

Technical Expertise: Real-time operating system knowledge, C++ and Graphical User Interface experience required.

People Management: Working as part of a team of 85, sharing of information, liaison with product release, audit, test, systems, software process improvement, configuration control personnel & line management.

Key Contributions: Aided the enhancement of a multi-function office automation device, working with a diverse code base originated from several different countries with minimal documentation. 

Company: [snip], Hemel Hempstead

Duration: October 1997 – August 1998

Position Held: Developer with Visual C++ expertise    

Key Responsibilities:  Analysis and design of applications for management of public key cryptosystem (PKS) key sets in UML using Rational Rose C++ tool and scripting for OOA & round trip engineering. Building applications with PKCS#11, user interface design on NT4 platform, interfacing to certificate servers using PKCS#10 under a Visual C++ development (MFC) environment. Designing with X509, X500, LDAP & RSA encryption techniques, Smart-Cards (also known as ‘ICC’) and DCOM/ActiveX remote connectivity of ‘service’ based components, programming in C++. Familiarity with ASN.1 compilers. Authoring of analysis and design documentation using Rational Rose to analyse and develop a model of the requirements specification and identify inconsistencies.

Technical Expertise: Requirement for experience with Visual C++, component based design, secure/robust development techniques.

People Management: liaison with team members, project management, marketing.

Key Contributions:  Design & implementation of the infrastructure for security policies including the GUI design and ASN.1 manipulation. Use of the STL.  Analysis of key management techniques with Rational Rose and it’s extensibility features to generate reports as an input to an RDB and building of a demonstrator prototype.  

Company: [snip], West London

Duration: July 1997 – October 1997

Position Held: Developer with Object Oriented development experience.

Key Responsibilities:  Analyst Programmer in Commercial Applications Development for support of the Management Information Systems department. Using three tier tools such as DYNASTY, SQL-SERVER 6.5, ACCESS, EXCEL, Visual C++ and VBA to develop management information systems under a (DSDM) Dynamic Systems Development Method on NT 4 platforms for a distributed system. SQL Server scripts used to query the AS400 database, VBA used to generate automatic reports for director level management and Access was used to hold results and generate reports.

Technical Expertise: Working with new approaches to project management (DSDM), delivering solutions for generating automatic reports to all levels of management.

People Management: Part of a diverse team (business analysts, external project management, supply-chain management).

Key Contributions:  Design of the inter-application reporting mechanism using EXCEL & VBA to interface to a C++ application through SQL SERVER to a AS400 database. 

Company: [snip], Maidenhead

Duration: October 1996 – June 1997

Position Held: Developer with Object Oriented development experience

Key Responsibilities:  Conversion of existing functional interfaces into Object Oriented DLL, migration of various applications onto 32 bit system & migration to NT 4.0 platform, programming in C++. Documentation consisting of requirements and design specifications. Writing tutorial examples for their evaluation packages, testing and writing scripts for analysing the efficiency of the compiler.

Technical Expertise: Working with legacy 16 bit applications for migration to 32 bit environments. Writing ‘wrapper’ class code for an API to provide an OO interface, also working with the compiler optimisation team.

People Management: Part of a team from Japan, Europe.

Key Contributions:  Working on pre-release target processors, coding in Visual C++, PC Card (PCMCIA) driver development using VXDs API programming, MFC, COFF files, C++ interfaces, Comms, GNU & IAR C++ compiler testing/evaluation for SH family, porting apps to NT. UNIX scripts, OMT modelling. 

Company: [snip], Bracknell

Duration: October 1995 – October 1996

Position Held: Developer with Real-Time Object Oriented development experience

Key Responsibilities:  To assist in the completion of the sub-units Software Design Document using the Software through Pictures CASE tool based on the Rumbaugh Object Modelling Technique methodology used on the IRIS project Single Channel Radio Architecture. To design, code, test and document any specific BITE (Built In Test Equipment) classes and derived classes for general re-use under UNIX using C++ developed on both host and target environments, tested under DejaGnu test harness.

Technical Expertise: C++ on embedded & SOLARIS, OMT (Object Modelling Technique).

People Management: Member of a team of 30 developers.

Key Contributions:  Programming 'in-the-large' as part of a nine strong team working to DOD standards 2167A. Use of the Software Through Pictures (StP from AONIX) OMT CASE tool for the Object Oriented Design of a secure radio equipment based on multi-embedded 68K processors, coding in C++ throughout. Design, coding, testing and complete round-trip reverse engineering of a family of classes using the StP CASE tool with scripts. 

Company: [snip], Wells

Duration: February 1995 – October 1995

Position Held: Developer with Real-Time Object Oriented development experience              

Key Responsibilities:  Design of the Station Level Computer PC software using Object Oriented techniques for use on the ANKARA metro AFC (Automatic Fare Collection) system. Based on the SELECT OMT modelling CASE tool.  All coding accomplished in C++ under MICROSOFT VISUAL C++, using OBJECT PROFESSIONAL library, RTKernel multitasking and ASYNC PROFESSIONAL comms tools for a DOS window based application. Responsibility for the design, coding & testing and integration of the above on a PC platform using MS Visual C++.

Technical Expertise: DOS based development, OMT & C++.

People Management: Sole team member responsible for technical coding, hand over to permanent replacement.

Key Contributions:  Technical responsibility of the project, building a robust working system and integrating three diverse packages within timescale constraints within a team of three. Utilising the OO approach to aid re-use, maintainability as well as documentation of the application.

 
 
 
© 2004, 2005 Copyright IT Consultants Direct Ltd. All Rights Reserved.