|
|
Symbian is the leading provider of smartphone operating system software to licensees worldwide.
In a large team for Personal Area Networking technologies, I have been working on defect resolution for Bluetooth protocol and profile implementation within Symbian OS. This has provided exposure to Symbian C++ and the Eclipse-based Carbide IDE, experience with large and complex object-oriented component systems, and extensive multithreaded debugging (on emulators, development boards and target hardware) against host layers of the Bluetooth stack and profiles - HCI, L2CAP, AVCTP, AVDTP, PANu/PAN-GN, and asynchronous client-server and comms frameworks. It has also required working across multiple concurrently-developed product codelines, and with scripted test frameworks involving synchronisation between multiple devices.
Projects included:
Cyan is an independent fabless semiconductor company producing a range of embedded microcontroller products.
In a small Software team developing Cyan's proprietary IDE in C++, I produced a new integrated help system for a major release. This provided experience in integration with the Adobe Acrobat Reader document presentation software, html standards and the Qt application framework. I also pushed a critical driver component through the Microsoft digital signing process for Windows XP.
Working in a growing team developing and supporting backend server systems for delivering the catalogue content underlying Amazon's extensive product websites, this rôle was in migrating production from a mature but slow system which had not scaled well, to a newer and lower-latency framework, and expanding the new system to cover additional retail markets. This has also given some opportunity for project lead responsibility.
Development was primarily in C++ and STL to POSIX API, on an extended network of linux machines, with many interactive and CGI utilities written in Perl and some components using core Java 1.4. Other heavily used technologies included SQL (MySQL and Oracle), HTML and XML, with increasing use of SOAP and similar service frameworks.
This proved a challenging rôle in a markedly different environment to retail software development, including tight SLA adherence, quick reaction to external change and rapid deployment of development updates.
After departing Citrix I took the opportunity for an extended break from a full-time work environment. This gave me time to study for industry certifications (Java), learn about a few current and new technologies (XML, web services, J2EE) not exploited in previous projects, and work on unpaid software projects in the Internet community and for local clubs and charities. I also extended my home network, including ADSL and 802.11 wireless with firewall and other relevant security measures, and hosted (and continue to host) several web sites and services.
Specific projects I worked on, and technologies I investigated include:
Citrix are a leading provider of client-server application delivery systems.
After their purchase of Insignia's NTRIGUE group in February 1998, I worked for two years in a small team on design and implementation for the Unix release of the ICA client in C/X11/Motif on eight platforms, including Internationalisation and Localisation work for European and Japanese languages, low-level graphics support in X11, audio streaming and a custom remote disk access protocol. I was also responsible for liason with RedHat over our inclusion on their Applications CD release, and production of suitably packaged releases for delivery.
From August 2000 I worked in the Metaframe Resource Manager product group (a system for monitoring, managing and analysing utilisation of a large farm of servers) primarily on a Java/Swing user interface layer using a custom network event framework to communicate to backend servers. This includes full project lifecycle tasks from influencing process guidelines and product requirements decisions, writing functional specifications and design documents, to writing module implementions.
Insignia's multi-platform desktop connectivity products included the renowned SoftPC/SoftWindows/RealPC emulator and Unix-to-Windows remote application service NTRIGUE, which later merged to become Citrix's Unix ICA Client.
Initially I was in a small team working on runtime cross-compilers for running Intel 486 programs on new RISC (Alpha, MIPS, PowerPC) editions of Microsoft Windows NT 4.0, porting our existing retail emulation products to ease platform migration by users and other software OEMs. I had prime responsibility for the DEC Alpha version and worked on-site at Microsoft in Redmond as Insignia's technical consultant in the weeks leading up to the release of the NT 4.0 Beta.
Later I was in our NTRIGUE client/server product team, first developing server filesystem access of client storage devices on six Unix platforms via TCP/IP, and latterly on a custom product license enforcement system.
Sophos produce retail and bespoke security software for business and consumer use, with the emphasis on PC anti-virus software.
My principal rôle here was the analysis of new viruses and development of detection algorithms, and technical support for customers with virus incidents. This consolidated my knowledge of assembly language and low-level systems processes and architecture including OS bootstrap, executable formats and hardware storage structures.
I also designed and implemented various encryption products and libraries using C and assembler, including a bespoke international document transfer system for a UK agency using RSA Public-Key cryptography.
I regularly wrote articles for the industry magazine Virus Bulletin, gave presentations on security for the Civil Service College, conferences and trade shows, and assisted with training courses delivered by the company for IT security managers.
Sun Certified Programmer for Java 2 Platform 1.4 - Dec 2002
Full UK driving licence City & Guilds Radio Amateur Examination 1984 Red Cross First Aider at Work, Jan 1997, and First Aider at Insignia and Citrix. Fire Officer training (Sophos 1992 and Citrix 2001)
Computer technology is to me as much a hobby, pastime and toy as it is a career; many of my hobbies involve use of computers. I maintain a number of web sites and work on software projects of my own or for "Open Source" initiatives. I regularly build and re-build my own machines, and maintain a home network of several machines including Windows and Unix systems, DNS, mail and web servers, wireless infrastructure, with traffic and security monitoring.
I have a keen interest in physical security, including CCTV, intrusion detection and access control.
I enjoy martial arts and have trained in Karate and Aikido, Shaolin Kung Fu, Tai Chi, Iaido and Aiki-jujitsu. I also enjoy target sports, including field archery, and rock climbing. I play and play-test various strategy, card, board and puzzle-solving games, both tabletop and on computers.
| [Validated XHTML 1.00] http://hackery.net/jmb/cv.html | $Id: cv.html,v 5.53 2008/04/01 02:33:01 jmb Exp $ |