This page summarizes my experience in specific 'areas' or with specific technologies/tools.
Select an item from the list (right)...
(Please note: some entries are disabled and to be added!)
Databases
Documentation
I have generally been employed in technical design and development roles. I have never been employed as
a technical author per se. However, I have found that I have a particular aptitude for documentation,
and for this reason, I have played a part in the production of documents/publications on almost all
of the projects I have been involved in. This either means designing and producing documents/publications
myself, or making significant contributions to other (project/product) documents/publications.
For instance,…
At Netspan, I produced user guides for various subsystems (application elements).
At ISI, I produced written material to accompany a networking course.
At Instem, I produced the networking-related chapters of the product documentation.
At X/Open, I produced most of the text for XTI, for XPG3 (X/Open Portability Guide).
I possess good communications and writing skills, am highly competent in the use of English grammer
and capable of presenting complex technical concepts in a simple, clear, concise and easy-to-understand
form. I am good at understanding the needs of users, at determining the audience, purpose, scope and
content of a document, at designing the layout of a document, at gathering, producing and organising
content and at producing the document itself.
I have used a variety of DTP and word processor applications (which can also be used for DTP purposes)
to create documents/publications. These include:
DTP applications: Interleaf (a top-end, professional DTP package), Publisher
Word processor applications: Word, WordPerfect
(Note: These are mainly for work purposes … however, my children use Publisher frequently, for school
work, and I am always advising/helping them in its use).
I have used a variety of graphics applications and hardware devices to create, import, collect and
manipulate diagrams and graphics images. These include:
Graphics applications: Photoshop, CorelDRAW/PAINT
Graphics devices: digital camera, flatbed scanner
I have designed and produced many different types of document, including engineering proposals,
functional specifications, design documents, implementation guides, user guides, administrator
guides, technical overviews, test plans, websites and web pages.
As far as web publishing is concerned, I have…
Lead the design and implementation of an intranet (designing the top-level pages)
Designed and implemented websites
Designed and implemented web pages
In the case of web publishing, I have a great deal of experience of HTML, usually designing and creating
web pages by hand, although I do have some experience of using web publishing packages (Frontpage,
Dreamweaver). I have also had some experience of a sophisticated web publishing package called LivePublish.
I have also produced a number of documents in HTML form.
IT Administration (ie systems and/or network administration)
My background is primarily in design and development. However, all development projects have involved a considerable amount of, and a certain level of competency in, systems and/or network administration. (I have also had to do these at home, where I have a small LAN set up).
In particular, I have…
Installed and configured operating systems (inc WinXP/2000/NT, Unix [Solaris,UnixWare], Linux).
Applied operating system service packs, upgrades/updates and patches.
Installed and configured, and removed, applications.
Applied application updates.
Installed and configured, enabled/disabled, and started/stopped/restarted, services. (eg IIS, MySQL, Samba).
Attached new hardware devices and installed drivers.
Set up networks and configured operating systems accordingly. This includes operation as a router and installation of firewalls.
Configured users.
Tuned operating systems and services (eg for performance)
Investigated and fixed faults, examined log files, etc.
Used a variety of tools and performed other activities to: partition and format hard disks; defragment hard disks; check for, and remove, viruses; check for, and fix, errors in the Registry (Windows); recover damaged or lost files; monitor performance, examine memory usage; remove ‘cookies’, spyware and such things.
(Tools used: Norton SystemWorks, OnTrack Fixit Utilities).
Microsoft Office
I have used Microsoft Office for many years. I have used the following versions:
2007/2003/XP/2000/97. I have mainly used Word, Excel, Access and Publisher, and to a
lesser extent Powerpoint and Frontpage. I have also used them all as a normal user, an advanced
user and a developer.
Usage
Normal user
Developed applications around
Office Automation
Word
Lot
No
Yes, as target
Excel
Lot
Yes (VBA)
Access
Lot
Yes (VBA)
Yes, as host (to start Word, Outlook)
Outlook
Lot
No
Yes, as target
Publisher
Lot
No
Powerpoint
Some
No
Frontpage
Some
No
Word. I have used Word to produce various types of letters and documents (from personal
letters to templates for office documents to technical documentation). I have also used
Word as a form of DTP (…though it has to be said that Word is not good for handling large,
complex documents).
I have also created my own templates, some with ‘document variables’. I have used automation
from within other applications*, specifying Word as the ‘target’ application - to start up
Word, load a document template and populate defined fields with actual data (taken from a
database).
(* web page and Access applications).
Excel. I have used Excel spreadsheets for a number of purposes, including…
A company’s accounts/’books’, to record details of all inputs and outputs and compute totals
Payroll/salary, as a means of calculating and recording salary payments
A means of computing totals and averages when analyzing graded evaluations
A mailing list
Access. I have used Access for a number of purposes, including…
A database application for stock control.
A database for use on a website (as a back-end database)
A database application for the storage and analysis of evaluation data.
The Access database applications have involved use of VBA, tables, forms, queries and reports and other advanced Access features.
I have also used automation from within Access to start Word and Outlook.
Outlook. I have used Outlook as my email manager (to create and send or download and store
emails) for many years. I have used automation from within other applications*, specifying
Outlook as the ‘target’ application - to start up Outlook, load a document template and
populate defined fields with actual data (taken from a database).
(* web page and Access applications).
I have also imported/exported data to/from these applications (and sometimes between
the applications), eg to save a Word document as RTF (rich-text format), HTML or PDF;
to transfer data between Access and Excel; to save Excel data as CSV.
I have also used the following Office applications occasionally: Powerpoint; Frontpage.
Networking / Data Communications
I have been involved with networks and data communications for most of my career (although in recent years, it has been more Internet and web technologies and databases, but still involving networks). (Rough estimate: >25 years).
I have had formal training in networking and data communications technologies and protocols.
I have been involved in two main areas:
(software) the development of networking products and network protocol stacks
(non-software) network architecture, infrastructure, topology and design.
I have a thorough understanding, and considerable experience of:
network protocol architectures/models (eg the OSI Reference Model (7-layer), the
TCP/IP Reference Model, some SNA) and N-layer architectures.
network types (eg LAN, WAN, etc) and topologies
network services and protocols (eg TCP/IP [IPv4 and IPv6], OSI, X.25, PPP, Ethernet)
network service interfaces/APIs (eg Sockets, TLI, NDIS, DLPI)
network devices (eg routers, bridges, etc)
Various other things, such as inter- and intra-networking, hosts and routers, clients
and servers, protocol tunnelling.
I have been involved in a number of major network projects and products, including:
(Commercial) ARKEN (for North-West Water)
(Defence) UKAIR CCIS (for RAF/MOD/NATO) and DOJAC (RAF/MOD)
I have worked on an R&D project, porting and investigating the use of IPv6 (previously
called IPng) – the next generation IP protocol. (IPv6 has many improvements, esp the
larger addresses).
I have considerable experience in/of: investigating and fixing networking problems,
using sophisticated protocol analyzers and simple tools such a ‘ping’, etc;
internetworking and conformance testing; performance analysis and tuning.
I have a considerable amount of experience in/of: the physical setup of networks,
cabling, etc; enabling and configuring network services under various operating systems.
I have designed, developed and presented a 3-day networking course, for a US company.
I have a reasonable understanding, and some knowledge, of the different demands that
data and voice place on networks, and of technologies that relate to voice, eg ATM,
Voice-over-IP, and also wireless networks.
At home, I have set up a small network of 3 systems, one running WinXP, one running
WinXP/NT (dual boot), one running Win2000/Linux (dual boot), on a LAN (100Mb Ethernet),
with one system acting as a router to the Internet.
PCs
I have a lot of experience with PCs, both software (operating systems, applications, etc) and hardware.
Software…
Operating systems: I have installed, configured and used a variety of operating systems,
applied service packs/updates/patches as required and installed additional services and
devices as required.
The operating systems include Windows (Vista/XP/2000/NT [both workstation and server],
WinME/98/95), Unix (Solaris, UnixWare) and Linux (Red Hat, Ubuntu).
Additional services include: firewall, web server (IIS or Apache), SQL Server, MySQL.
Applications: I have installed, configured and used a variety of applications and
applied service packs/updates/patches as required.
The applications include Microsoft Office, graphics applications, development packages.
Utilities: I have installed, configured and used a variety of other applications and
utilities, inc some for security purposes (eg antivirus packages, antispyware utilities,
antispam utilities) and some for maintenance purposes (eg hard disk partition programs,
utilities to optimise and tune performance, utilities to diagnose and fix problems).
Hardware…
I have built numerous PCs from ‘scratch’ and replaced or upgraded numerous components.
I have diagnosed and fixed numerous hardware problems.
I am very familiar with PC internals, standards and interfaces (eg FSB, Intel/AMD,
SDRAM/DDR, EIDE/SCSI, USB, ISA/PCI/AGP/PCI-E, etc) and the BIOS.
Amongst other things, I have: replaced motherboard and processor, added extra memory,
installed extra devices (such as DVD/CD reader unit, CD-RW unit), installed a variety of
cards, replaced the power supply.
Networking: I have set up the hardware and configured the software (operating system) for
networking, for both LANs and WANs. In the case of LAN, this involves installing a network
card, setting up the hub and cabling and configuring the operating system). In the case of
WAN, this involves adding a modem, setting up the cabling and configuring the operating system).
I am very familiar with: network architectures and topologies; TCP/IP (including IPv4 and
IPv6 and the internals) and related protocols; the Internet, WWW (web) and related technologies.
I have done all the above for various companies, for myself and for various friends and neighbours.
In the case of companies, I did a lot of this for Potteries Antique Centre and Potteries
Specialist Auctions, where I looked after all the IT.
In the case of myself, I designed and put together a home network and built the PCs myself.
(The network consists of 4 PCs and a notebook/laptop, a wireless ADSL router with Ethernet
hub. Both PCs have exchangeable hard disks and run one of Windows XP, Windows Server 2003
or Linux).
Perl
Software development and engineering
I have a great deal of experience in software design, development and engineering, and
it is one of the main elements of my career.
I have had formal training in software development methodologies, software engineering and
various languages.
I have worked, in software development and engineering roles, for major IT companies and on
major IT projects (some government, some defence, some pan-European R&D technology projects)
… and made significant contributions to all.
I have a thorough understanding of modern software engineering principles and practices,
the software lifecycle, conventional and professional development standards and practices,
code structure/modularity/reuse/optimisation, the techniques of writing efficient and robust
code, etc.
I have been involved in all phases of software development, from initial design, through
implementation, complex (software) engineering, porting, integration, testing and debugging,
to support and maintenance.
I have worked on defence projects, where design and code reviews/‘walkthroughs’ are
standard practice.
I have experience of a variety of… languages (compiled/interpreted, procedural/OO);
operating systems (inc Win XP/2000/NT/9x, Unix, Linux, real-time/embedded); development
tools (eg NetBeans, Eclipse, Visual Studio)
I have developed various types of software, including…
distributed (peer-to-peer or client-server) n-tier network applications (including web applications);
web server (IIS) extensions; MS Office applications (VBA); complex data mining applications;
network protocol stacks; Unix device drivers (network drivers, PCI interface drivers, hardware
drivers); simple, stand-alone applications; test utilities and simulators.
I have used the following languages:
(Compiled) C, C++, ADA, Coral-66 (C-like), Pascal, Cobol;
(Interpreted) Java, Perl, Javascript/JScript, VB, VBA, VBScript;
(Other) Assembler. I have used OO with PHP, Perl, Java, C++ and ADA.
Testing
After graduation, I joined the Engineering Diagnostic software division of ICL, and spent a
couple of years in this division, designing and developing test software.
Development (that is, IT development) and testing go hand-in-hand … that is, testing is an integral
part of the development process. I have spent most of my career in software design and development
(and, more recently, web and database development) and every project – however big or small – has
involved testing. Therefore, I also have a great deal of testing experience.
I have been involved in all aspects of testing … that is, from defining test requirements to
producing test plans, identifying test cases, conducting tests, documenting and analysing test
results, regression testing, etc.
I have been involved in testing of varying granularity, including system testing, subsystem
testing, unit testing and subunit testing.
I have been involved in different types of testing, including functionality testing, black box
and white box testing, performance testing, load testing, conformance testing, integration
testing, security testing, etc.
I have used a variety of test methods and products. These include third-party test products
(hardware and software) designed specifically for the purpose. They also include test utilities
and simulators I have designed and developed myself where/when necessary (to automate and
simplify testing). I have also conducted manual tests when necessary.
Third-party products include:
A variety of IDEs, including NetBeans, Eclipse, Microsoft Visual Studio, Microsoft Visual
Interdev … for software development.
Conformance test services/suites … such as those provided by the NCC for testing network
protocol stacks.
Network protocol analyzers … which can often be used for limited testing.
Unix (and Linux)
I have approx 15y Unix experience. This is mainly with the commercial variants, such as Solaris,
AIX, UnixWare, SCO. This includes kernel and device driver development and installing/configuring
Unix. This experience comes from major projects involving software development, using Unix as
both the development system and the target system.
I also have some experience of Linux (Red Hat, Ubuntu).
Web Development
I have been involved in web development for approx 12 years. I have worked on both
public and private (Intranet) websites and web applications, using both Microsoft and
open source technologies.
Category
Lot
Significant amount
Limited amount
Web protocols
HTTP
Web technologies
ASP (classic), PHP
CGI, JSP
ASP.NET
Web formats
HTML, DHTML, XML, XHTML, CSS
XML DTD
XML Schema+XSLT
Web languages
VBScript, Javascript/JScript, Perl, C++, Java (Client and server side)
Major web/intranet developments
Company: Manchester Metropolitan University. Web upload facility and website section.
This involved the design and development of a website/web application to allow the online
submission of work (assignments) by students, and collection by tutors.
I also designed and created a website (part of the overall MMU website) for a specific unit
within MMU.
URL: www.mmu.ac.uk/ioe/cqis
Company: Potteries Antique Centre. Company website.
This involved the complete redesign of the company’s public website … with a more professional
look and new features and facilities, such as a search mechanism, the display of prices in
other currencies, maps and directions, etc. I did the same for a sister company, Potteries
Specialist Auctions.
URLs: www.potteriesantiquecentre.com, www.potteriesauctions.com
Technologies: (PAC) Windows 2003 Server, (classic) ASP. (PSA) Linux, PHP, MySQL.
Company: Netspan Solutions. Intranet application (for Computer People/Ajilon/Adecco).
This involved the design and development of a new intranet-based application, ResourceIT,
for Computer People and its parent companies Ajilon and Adecco. The application is used
internally by the company’s consultants and stores details of consultants, clients,
requirements and candidates. I was responsible for certain parts of the application (subsystems)
and contributed to the user interface and database designs.
Technologies: Windows NT Server, (classic) ASP, COM, SQL Server 2000.
Company: Spider Software. Company intranet.
This involved the design and development of a company intranet, from scratch. I initiated
and lead this development, determined the ‘look and feel’ for the intranet, gathered and
organised information for the intranet, designed and produced the top-level pages, wrote
the ‘Charter of Use’ and set up and participated in the Web Working Group.
Courses
2006: MSc course, OOSE module: designed and implemented e-commerce application,
using Java, JSP, JavaBeans, Eclipse and Tomcat.
2005: Attended short course on PHP and MySQL at Keele University.
XMLGeneral. I’ve worked with XML on-and-off since Feb 2000, and have used it on several projects.
I already had a thorough understanding of HTML (technicalities and internals), so an
understanding of XML came quite readily, and Ive read and understand (most of) the W3 XML documents
and track XML developments. I also follow the Perl/XML developments and the XML newsgroups.
I have knowledge and experience of using XML, DOM, SAX, XHTML, DTD, Schema, XSL and PHP/Perl/Java XML
libraries.
Company: Catalyst Electronic Publishing Limited. Catalyst is a small company (but
with some BIG clients) involved in electronic publishing. They and their clients use a product
called LivePublish and VERY large XML documents (eg vast collections of legal case histories,
medical papers, etc). I wrote various Perl programs to manipulate these large XML files in
various ways, eg to find and extract certain "elements" of interest (data mining), produce
reports and/or statistics, split large documents into smaller documents (perhaps converting
them into HTML en route), etc.
Company: Netspan Solutions Limited. I worked for Netspan on the development of a
sophisticated intranet-based system (ResourceIT) for Computer People / Adecco. This system
allows consultants to submit requirements to one or more selected job boards, and for Computer
People/Adecco, one of the job boards (IdealJob) accepts submissions as XML files. I worked
with IdealJob to resolve issues/problems with their XML spec and their interface, and I
worked on ResourceIT to design and develop a mechanism for taking a requirement, converting
it into an XML document and submitting it to IdealJob.
An XML Utility: XMLToolBox. I designed and developed a an application for
checking/viewing/manipulating/converting XML documents, for my own company.
This allows a user to: check/validate the XML; show the structure of, and statistics relating
to, an XML document; show the data contained in an XML document; show the tag attributes;
split nodes (from one input file into multiple output files); concatenate nodes (from multiple
input files into one output file); convert an XML document (whole/part) to HTML.
This program is written in Perl and uses a number of the Perl XML libraries (inc the SAX
and DOM libraries).
CV in XML format. I have produced a version of my CV/Resume in XML format, by
• Producing a definition of a CV/Resume in an XML format, in the form of a DTD (Document
Type Definition), with an accompanying XSL (stylesheet)
• Producing a definition of a CV/Resume in an XML format, in the form of a Schema
• Rewriting my CV/Resume in this format (and conforming to the DTD/Schema)
I tested it using an established XML parser and by loading it into IE5.
(A DTD/Schema is a formal description of an XML document. It defines the tags used and their
structure & relationships).