FRANK CARVERTelephone: 01473 273621 Mobile: 07734 592693
Curriculum Vitae ~ Resumé62 Tomline Road
Suffolk IP3 8DB
|Availability Now||Location Ideally Ipswich or East Anglia, happy to telework||Date Feb 2020|
I am experienced in all aspects of software development, including object-oriented technologies, user-interface design, network and internet protocols, web and mobile technology, development process and software version control systems. I have evaluated a wide variety of computer and software systems and am confident in specifying architectures and solutions for real-world problems. I have teaching, training, organisational and management experience as well as military and leadership training. I am especially familiar with service and system integration including REST, XML, XSLT, JSON, JSP, JDBC and Web Services as well as binary and textual interfaces and protocols. I have a deep understanding of HTTP and web frameworks (Struts, Spring MVC, mojasef and many others), dynamic web page generation and the integration of modern web and server-side technologies with legacy software.
I am a qualified, experienced, and flexible teacher and trainer, familiar with classroom teaching, on-the-job training, and distance learning. I have good communication, collaboration and mentoring skills and work well in a team.
Sep 2017 - Jan 2020: University of Suffolk, Ipswich
Lecturer in Computing: Teaching software development and asociated technologies to undergraduates. Lesson planning and delivery, classroom management, mentoring, marking and moderation of work (part-time).
Jul 2015 - Nov 2017: Guidesmiths Limited, London
Oct 2015 - Apr 2016: Conga Limited, Ipswich
Senior Software Developer: Architecture, design and implementation of prototype system for scheduling and managing on-demand public transport. Mentoring staff and building a development infrastructure Main skills used include Java, XMPP, Redis, MySQL, git, Linux, AWS, genetic algorithms, routing algorithms, open data. (contract,)
Jun 2014 - Oct 2015: Guidesmiths Limited, London
Feb 2014 - May 2014: Smart 421 Limited, Ipswich
Senior Software Developer: Maintenance, continued development and mentoring new team members on the mobile billing system I worked on two years ago. (3 month contract, extended 4/14)
Sep 2013 - Feb 2014: Follow The Van, Ipswich
Nov 2012 - Jul 2013: BT Vision, Adastral Park, Ipswich
Consultant Lead Developer: Design and implementation of a key component in a cutting-edge simultaneous multi-standard video encryption system for the high-profile launch of BT Sport. Supporting and mentoring the rest of the team, particularly in the areas of TDD, iterative design, and high-reliability development practices. Our component was such a success that the team, the software, and the way we deveoped it are now being held up as reference examples for other parts of British Telecom. Main skills used include C, Ruby, make, git, TDD, Simulcrypt, binary protocols, high availability, high reliability etc. (initially a short contract, extended several times)
Apr 2011 - Jan 2012: Smart 421 Limited, Ipswich
Senior Software Developer: Design and implementation of multiple SOAP web services for mobile pay-as-you-go billing. Mentoring of development team and advising managers on agile methodology, tools and techniques. Main skills used include Java, XML, SOAP, web services, SmartIntegrator, JUnit, Subversion, Ant, Maven, Jenkins, Eclipse, etc. (6 month contract, extended 10/11)
Dec 2009 - Mar 2011: STL Technologies Limited, Bury St Edmunds
Jul 2009 - Sep 2009: Smart 421 Limited, Ipswich
Sep 2006 - Apr 2009: iO Global Limited, Ipswich
Mar 2006 - Sep 2006: Smart 421 Limited, Ipswich
Consultant: Specification, architecture, design, and implementation of an enterprise licence key management component for a large Dutch media and telecomms company. Main skills used include Java, J2EE, servlets, JMS, messaging, JDBC, SQL, Weblogic, web services, UML. (6 month contract)
Jan 2004 - Mar 2006: Efficacy Solutions Limited, Ipswich
Consultant: Specification, design, and implementation of systems for local businesses and individuals including: improvements to an enterprise message-based system; configuration and management of corporate web sites; design, implementation and testing of drivers for legacy industrial hardware. (Several fixed price contracts)
Nov 2002 - Mar 2006: Suffolk College, Rope Walk, Ipswich
Lecturer in Office Technology and Computing: Teaching software development, web technologies, and expert systems to late teenage and adult learners. Course and lesson planning and delivery, classroom management, mentoring, marking and moderation of work (part-time).
Nov 2002 - Jan 2004: BT Ignite Global Solutions, Adastral Park, Ipswich
Oct 2001 - Jul 2002: BT eXact, Adastral Park, Ipswich
Software Engineer: Enhancements to Enterprise Knowledge Repository: User Interface process reengineering and the complete architecture, design and development of a distributable, scaleable, cacheing "middleware" web application using JSP, custom tags, servlets and JDBC. Provision of flexible website branding and user experience customization using XML and XSLT. Acting as a Java, Object-Oriented Software, Web Services, Software Quality and Extreme Programming mentor for other team members. (Fixed price contract)
Apr 2000 - Jul 2001: British Telecom, Adastral Park, Ipswich.
Feb 2000 - Mar 2000: British Telecom, Martlesham Heath, Ipswich.
Oct 1998 - Feb 2000: British Telecom, Bibb Way, Ipswich.
Software Engineer: Maintenance and development of a distributed C++ middleware system to perform real-time system tests for "Home Highway" ISDN service. Included AION knowledgebase on Solaris Unix. (Initially a 6 month contract, Extended 4/99)
Apr 1995 - Oct 1998: British Telecom, Martlesham Heath, Ipswich.
Software Engineer: Design, implementation and maintenance of a distributed multi-platform Java system for work scheduling and data-gathering. Design and maintenance of the previous version in C++ and C on a DOS-based Husky FS2 hand-held terminal. Writing a serial device driver in 8086 assembler for the FS2. Acting as a Java, C++ and object-oriented software mentor for other team members. (Initially a 6 month contract, Extended 10/95, 4/96, 4/97, 4/98)
Sep 1994 - Jan 1995: Telemarketing Link Ltd, Slough
Systems Manager: Management of a department of five people and a 50-user Pyramid Unix system. Creation and maintenance of telemarketing applications
Apr 1990 - Sep 1994: Lindos Electronics, Melton, Suffolk.
Purchasing Manager: Management of one employee. Design and implementation of combined computer/manual system for tracking and predicting stock shortages, automated component ordering, stocktaking and goods despatch.
Mar 1988 - Mar 1990: Lindos Electronics, Melton, Suffolk
Software Engineer: Design, implementation and support of software in C++ and Assembler under DOS including UI, graphics, language interpreter and device drivers to control the Lindos LA100 Audio analyser. Writing and production of the accompanying manual.
Jul 1986 - Mar 1988: Kuma Computers Ltd, Pangbourne, Berks.
Programmer: Porting of a word processing package from C and Assembler under GEM on the Atari ST, to C under GEM on the PC. Design and implementation of an indexing package for the above. Design and implementation of a word processing package in C under AmigaDos on the Amiga.
Sep 1983 - Jun 1986: Computer Systems Engineering degree, University of Warwick.
Student: Courses in Pascal, C, C++, Unix, Object-Oriented Design, Operating Systems, Database Theory etc. My final year project was a software package to create, display and simulate random 'fractal' terrain (C++ under Unix on a VAX) as part of a larger project to research low-level missile guidance algorithms.
Jan 1983 - Sep 1983: Marconi Space and Defence Systems (Command and Control), Camberley, Surrey.
Electronics Assistant Assistance in the manufacture of military computer system prototypes, and writing of test programs in 8086 assembler to evaluate the hardware, a service not provided by the main software contractors.
Jan 1980 - Oct 1982: Royal Navy, various ships and shore stations.
Weapons Engineer Officer: General and Navy-specific engineering training, both theoretical and practical. Leadership and management training.
My secondary education was at Farnborough Grammar School, where I obtained 'O' levels in Biology, Chemistry, Mathematics, English Language, English Literature, French, German, Technical Drawing and General Studies, followed by 'A' levels in Mathematics, Physics and Design and Technology. During the Design and Technology course I was part of a three-man team that designed and built an automatic lawnmower which appeared on BBC TV's 'Tomorrow's World'. At university the honours degree in Computer Systems Engineering covered the theory and practice of software, electronics and the interface between them - in short, all the most useful parts of Computer Science and Electronic Engineering. In the final year I specialised in software but still retained a good grounding in electronic design. In recent years I have continued my education, taking evening courses 'for fun', and have gained 'A' levels in English, History, German, Accounting, Philosophy and Geography as well as taking courses in Advanced Driving and Video Making. I have completed both an MSc through the Open University and a programme of teacher training.
I have been an moderator, mentor and reviewer at www.JavaRanch.com since 1999, and have helped thousands of people to a better understanding of Java and associated technologies. I am a contributor to many open source software projects, including Stringtree Java Utilities, the Mojasef server and application framework, and Friki a web collaboration tool. I am an active media maker and producer for clients and friends with skills in camera operation, sound recording and audio/video editing. I am a keen player, designer and demonstrator of all forms of social games including role-playing games, war games, board games, card games and paintball games