A dedicated career
software engineer with 20 years software development and management experience
in the private sector plus 4 ½ years of IT consultancy experience in the
government sector.
I am an innovator and early adopter who enjoys all
aspects of software engineering. I keep abreast of software engineering
developments, have an excellent track record of delivering complex technical
solutions on time and to budget, and have a proven ability to communicate
complex technical issues using written, oral or presentation techniques at
board level, in sales situations and to other technicians.
For the last few months I have been working on an exciting new project in the finance sector. Prior to that I completed, single-handedly, a major piece of product development called QuSheet (see www.qusheet.com), with over 30,000 lines of code split between .NET/C# and Prolog (Functional/Rules-Engine based).
As a consultant
within the public sector I was the technical member of the management team for
a PRINCE based project, dealing with all of the project’s technical issues such
as performance, suitability, cost of development and value for money.
I currently live in
the north-east of England but I am happy to relocate for the right position (a
move I will finance myself).
PERSONAL SUMMARY
|
Date of Birth |
|
|
Nationality |
British, of Argentine parents |
|
Education |
BSc (hons) 2.1 in Mathematics with Computer Science ( A-levels: Maths (+S level), Further Maths and Physics |
|
Principal Technical Skills (with reference to Career Summary below) |
Engineering1-2,4-8, Management4-6, Business Development5, Consultancy3,7 Object Oriented Analysis and Design,1,2,4, UML4, Rational Rose4 Design Patterns1,2, 4, Use Cases/Stories4, Unit Testing4 Agile Methods1,2, 4, XP4, SCRUM4, PRINCE3, Microsoft Project3,5-8 C++4,5, STL4, C6-8 Windows (Forms) 1,2, .NET1,2, C#1,2, Visual Studio1,2 Java4, Swing4, JavaScript2, HTML2, CSS2, XML1,2, XSD1,2 Unix4-8, Linux2, Sockets4,8, TCP/IP8, SNMP4 Real Time4-5, Multithreading1,2,6-8, Parallel Programming4 GUI2,4, Embedded Systems6-8, Data Networks4,6-8, Network Management4,5 Functional / Rule System Programming1,2, Prolog1,2 Government Mainframe Systems3 IBM Minis / Mainframes9 |
CAREER SUMMARY
|
1. |
Feb ’10 to date |
Sub-Contractor
at EGS developing a PDF to XML translation application |
|
2. |
Oct ’06 to Feb ‘10 |
(3
yrs) Working for myself, developed QuSheet (see www.qusheet.com). |
|
3. |
Apr ‘02 to Oct ‘06 |
(4.5
yrs) Freelance Senior IT Consultant at the Department for Work and Pensions
(equivalent grade 7) |
|
4. |
Sep ’96 to Apr ‘02 |
(5.5 yrs) Principal Architect and Software Development Manager at Viewgate Systems Ltd |
|
5. |
Jun ’95 to Sep ‘96 |
(1.25 yr) Senior
Development Consultant and Business Development Manager at Network Managers
Ltd |
|
6. |
Aug ’90 to Jun ‘95 |
(5 yrs) Senior Systems Analyst and Software Development Manager at Cray Communications Ltd |
|
7. |
Aug ’88 to Aug ‘90 |
(2 yrs) Freelance Senior Software Engineer at GEC and Retix Systems Ltd |
|
8. |
Aug ’86 to Aug ‘88 |
(2 yrs) Software Engineer at Retix Systems Ltd |
|
9. |
Aug ’84 to Aug ‘85 |
(1 yr) Student placement at IBM Greenford Green |
|
Outside Interests |
|
|
References |
David Cocks, CTO, EGS Group, david.cocks@egsgroup.com Personal references within the DWP have to be obtained through official channels. Please feel free to approach: Mark Richardson, Steve Scott, Tracy Leck, Bill Dixon, Stephanie Howe, Mark Blundell. Levon Pettrouss (previously Software Development Manager at Viewgate Networks Ltd): lpettrouss@yahoo.co.uk (07905227874) |
The EGS group is a financial organisation which specialises in Electronic Invoice Management.
Enterprises use EGS to automate the whole purchase and payment end-to-end process. Buyers submit purchase orders, suppliers submit invoices, and EGS matches the two and releases payment if appropriate.
Unfortunately, many suppliers submit their invoices in a paper based form (albeit a fax or print-out of a PDF document), requiring the use of expensive scanning and OCR (optical character recognition) processes to allow the invoice to be recognised by EGS. These processes are error prone and limited in the amount of information it can obtain.
In Feb 2010, David Cocks from EGS asked me to investigate the possibility of developing a product which could read invoice data straight from a PDF file. After a 3 week feasibility study I was contracted to develop Einstein, a PDF to XML translation engine.
Einstein is a Windows program which extracts text and positioning information from a PDF file and passes it to a rules-based Prolog engine to scan and deduce the invoice data. Individual rule sets are written in order to accommodate the variation in data and layout provided by different suppliers. Line based invoice data is retrieved as well as summary data, and all of the information is checked for consistency and correctness before being submitted to the EGS invoice payment system (mistakes are flagged back to the supplier via automated email).
EGS are planning to start using Einstein in the third quarter of 2010, and there is great excitement about the possibility of making significant cost savings as a result.
QuSheet is a Windows Report Generator that creates “dynamic documents” – documents which use HTML, CSS and Javascript technology to allow the viewer to select the level of details that they wish to see. QuSheet uses XML/XSD as an input mechanism and a Prolog based rules-engine to generate output. Please refer to the product’s web site (www.qusheet.com) for details.
QuSheet’s Windows (Forms) front-end (.NET, C# and Visual Studio) works with all the sophistication which I think a high-quality graphical user interface should provide, including a multi-tab interface, context sensitive help and multiple do/undo command stacks.
QuSheet’s back-end leverages the power of a rules-engine (Prolog) to produce an application which delivers functionality which is both useful and complex.
QuSheet was developed using Agile Methods and OOAD in an environment which combined Visual Studio on Windows with Linux capabilities from Cygwin. All of my software engineering skill and experience was put to use making sure that QuSheet could grow freely in whatever direction seemed natural for it whilst retaining its robustness.
DWP has embarked on
one of the largest change programs ever undertaken in
I have been engaged
by the DWP on three separate contracts, each lasting about 18 months.
During the last
contract I have been working for Pensions IS/IT, providing detailed technical
advice and investigations on future product initiatives, legacy consolidation
exercises and on supplier development costs. I have worked extensively on
Future Pensions Reforms, Pensions Forecasting, Local Services and CIS, the
DWP’s Customer Information System.
My prior contract was directly with the Pensions Forecasting project as the
project’s Technical Consultant in lieu of an IS/IT representative. As well as
taking care of all technical risks and sign-offs, working within the
government’s PRINCE environment, my principal role was to review and challenge
man-day estimates submitted by different suppliers for various
forecasting-related projects - projects that have varied in cost between £1
million to £10 million. My extensive technical background allowed me to analyse
IT proposals at a high technical detail. This analysis allowed myself, and
other members of the DWP, to challenge supplier costs, and resulted in the
savings of many millions of pounds to the client.
Prior to this I was
engaged by the DWP’s Technology Office, initially on a review of CSA’s IT program
and then on permanent loan to PFIT (the Pensions Forecasting team which later
took my contract over).
In the review of CS2 (CSA’s IT solution) I ran a stream which
concentrated on a particularly sensitive area:
The resulting report contained 25 recommendations of which 6 were critical to the success of the project. The report was well received and acted upon by the department.
Within PFIT I
provided key technical advice to Senior Project Management on all aspects of:
· Technical evaluation of the solution against business requirements
· Examination of technical contractual issues
· Change control and man-day impact analysis
· Performance assurance
· Service level management
· Planning
· Client and supplier testing
In all cases operating within a commercially and politically sensitive arena, my contributions have helped ensure that DWP has received value for money, has received products that only went live when fit and ready to do so, and that suitable contingency options were in place.
The original Network People Ltd, later to become Viewgate Networks Ltd, was a company in danger of extinction. Its sole offering, a product providing Frame Relay and X.25 Network Management, worked solely on Alcatel TP Switches, and these were rapidly becoming obsolete. I was headhunted in 1996 as Principal Architect in order to bring a new technical direction to the company and to lead the development of the resulting product strategy.
My solution was to combine the selectivity of their existing product with protocol and vendor neutrality. The resulting Inteligo product suite addressed the needs of network managers in a unique way. Instead of providing “full coverage” management of every piece of data in the network, with the resultant user complexity and performance limitations, Inteligo concentrated on those metrics that represented 99% of the problem. These metrics were efficiently collected from target devices using a process called Adaption.
Adaption worked by pre-analysing network devices prior to data collection in order to establish which algorithms, from an ever expanding database of algorithms, should be used in order to calculate the required metrics. Algorithms were prioritised so that “unsupported” devices could still be managed from a tier of generic algorithms whereas supported devices would use ones specifically tailored for them. Once adaption learning had run on a given device, metrics with easily understood (homogeneous) results could be calculated on each physical and virtual interface of that device as required. The algorithms supporting each metric made their calculations using raw-data “cherry-picked” from the target devices. This they did when requested by higher-level processes, passing back only the final calculation results.
Adaption was an approach that provided ease of use and a unique potential for scalability. It allowed Viewgate to be the only company able to address large scale carrier networks (as opposed to the smaller less diverse enterprise networks) using a vendor neutral product, and was set to become dominant in the marketplace.
Once Viewgate’s managers, engineers and potential customers, accepted the above approach and consequent development strategy, I took on the role of Software Development Manager to lead us through its development. As well as managing a small team of engineers I also designed the product’s internal socket-based architecture, wrote large parts of its middleware, the main (SNMP based) adaption component and a Java/SWING front-end configuration tool. When it became time to expand the company I did all the technical presentations to Venture Capitalists, took us successfully through three Technical Due-Diligence exercises, and was instrumental in securing our first new major customer, Cable and Wireless, whose order secured the company’s first round of funding.
Once funding took place and the company grew, I gave up the
overall management role in favour of a more hands-on technical one, acting both
as a principal member in the architecture team and running my own C++
development team. In order to ensure product stability I introduced new
techniques of testability and design (Agile Methods, SCRUM, Unit Testing with
CPPUnit and Extreme Programming) – methods that have now gained considerable
acceptance in the marketplace – as well as continuing the use of Use Cases, UML
and Rational Rose (now owned by IBM). I maintained my hands-on approach by
leading my team from the front, showing them how to design and write software
which was clear, verifiable and minimal (my three criteria for good quality),
and drawing on my own considerable design experience and C++ skills (which were
acknowledged the best in the company). I also encouraged the pursuit of
excellence within our engineering teams by running regular lunchtime seminars
on software analysis, design (including design patterns, STL and use of third
party libraries), testability, coding best practices and automated testing. As
a result, by mid 2001 Viewgate was posed to make a number of major sales in the
In 1995 Network Managers sold the Intellectual Property
Rights of its generic network management product to Microsoft. The transfer of
most of the company’s engineering workforce accompanied this sale to Microsoft,
though Network Managers retained the rights to sell its product within
a) Develop business opportunities and revenue streams while the company was in transition,
b) Help keep the engineering section ticking over in the light of so many departing engineers,
c) Form part of the three-man architecture/management team that would take the company forward.
I managed the development of the company’s product within
two major accounts: a major bank in
I also took charge of a major re-release of the product across all platforms. It was just prior to being headhunted by Viewgate Networks that we formed the three-man senior management team that was to take the company forwards. Unfortunately I left prior to seeing that opportunity develop.
CASE Communications Ltd was a company that, in collaboration with a Danish company called DATACO, provided a one-stop shop for all of an enterprise’s data communications needs.
CASE’s LAN division took me on to head the software development of its new FDDI (fibre-optic) concentrator – FDDI being a new technology of that time. Working mainly in C I wrote the software, with a large component of bought in software. It was tested extensively using simulators that I also wrote and delivered to time and within budget. The product was sold successfully and I was subsequently involved in a large amount of post-development promotion work such as sales presentations, training and exhibition stand duty.
When CASE was bought by DOWTY they also acquired DATACO and
amalgamated it with CASE’s LAN division. Overall management of LAN product
development went to
The strategy for the new LAN group was based on providing multiple products within a single hardware hub using plug-in modules. I ported the FDDI concentrator to this new hub and was also part of the architecture team tackling over-all management (via SNMP) and common resource allocation.
At this time I also developed a major new system for handling redundant links between Ethernet concentrators. Called Redundant Link Management (RLM) and running on our own concentrator cards, this unique system provided full and automatic redundant link set up and recovery – an undisputed market leader. The algorithms and protocols were developed over 18 months, using extensive automated simulations I developed to show how the algorithms coped with the various breakage scenarios that they had to deal with. RLM was successfully sold to a number of key accounts before Ethernet concentrators were themselves superseded by Ethernet switches.
In 1987 GPT commissioned GEC to develop a series of FDDI
products to provide the backbone to its new digital telephony service. I was
brought in as a freelance senior software engineer to develop the Station
Management and Connection Management components of its FDDI Concentrator and
Bridge. These components were so complex that by the time I joined CASE (above)
we were able to buy them in from a company in the
During this time I developed a sufficiently strong relationship with GEC that I was able to do a lot of my work at home, despite being a freelance contractor. I also did a number of fixed price development contracts with my old employer Retix Systems Ltd – again working mainly from home.
TSL Communications was a company that provided a number of data networking solutions based on its own general-purpose hardware unit and home-grown real time operating system.
I joined as a graduate in 1986 and wrote (in C):
I also completed some smaller projects including firmware optimisation, bespoke data-communication components for Olivetti, SLIP, SNMP Agent, and data compression implementations.
At the time I joined IBM had a small group (in the