Michael Sean Grant
M.A. (Cantab), M.Sc., Ph.D.
profile
Nationality: British
Based in: Berlin, Germany
PROFILE
A software engineer with fifteen years' experience working in a highly successful
cutting-edge environment. Able to work in a team or by myself. Committed to
achieving high software standards, through the use of such software development
methodologies as Extreme Programming and Agile Development.
MAJOR ACHIEVEMENTS
Wrote a substantial share in both the embedded and content
production/management code for pioneering interactive TV services
including but not limited to:
- At the BBC:
- Pyramid (BIMA award winner,
RTS nominated), the world's first interactive TV adventure.
- Spooks Interactive (BAFTA winner)
- The Test The Nation series (BAFTA nominated,
EMMA winner)
- Walking With Beasts (BAFTA winner, EMMA winner)—since rebroadcast in
Australia.
- Modular configurable applications reused for such diverse services as
Fame Academy, Question Time, and sports events with multiple video streams
and live results, such as the Six Nations rugby tournament.
- At S&T:
- Electronic programme guides for Freeview Australia and Freeview
New Zealand.
- Portal services on Freeview (UK) offering access to online channels, including
VuTV (channel 238), TV Player (channel
241), Vision TV (channel 244).
- Planet Knowledge documentary access service (Freeview channel 245).
Also put together
a toolset,
now open source, for developing in MHEG-5, including a compiler,
emulator/step-debugger, Eclipse editor, and FitNesse fixtures for automated acceptance
tests of interactive TV services.
EXPERIENCE
- 2009–2015: Senior Software Engineer
(2009), Principal Software Engineer (2010–2015)
- Took a principal role in the Hybrid development team, including mentoring team members in design, coding and testing and documentations standards and techniques on a day-to-day basis.
- Developed Java components for interactive applications and management systems.
- Designed and developed, using Java and other high level languages, production and management tools for MHEG authoring.
- Participated in system design and implementation for application
systems in MHEG and, recently, also HbbTV, including the use of well-structured data systems.
- Worked with both colleagues and customers on system design issues.
- Helped train other team members.
- 2003–2009: Senior Software Engineer, Interactive TV
- Helped manage projects by liaising with producers and planning technical
work for my team in consultation with them.
- Managed development within my team by assigning tasks to team
members, overseeing their execution and ensuring deadlines were met.
- Devised tools to aid the development and deployment of services, and to
ensure their robustness.
- Helped train and mentor new members of my team and the test team, and
copresent internal courses.
- 2000–2003: Software Engineer, Interactive TV
- Planned and programmed interactive applications on digital
television and digital satellite set-top boxes used by up to fourteen
million people (2004 Olympics).
- Contributed to projects over the full software life cycle.
- Wrote software executing on the BBC's servers to enter and manage the
data for these.
- Worked as part of a team of eight, including in pair programming.
- 1996–2000: Academic research (as Ph.D. student)
- Used Genetic Programming to explore the automation of sensor
planning for machine vision. This included:
- Designing languages and implementing simple parsers for them,
along with functions to execute evolved programs and assess their quality.
- Extending the public-domain core code used to add the facility for
strong typing to these languages.
- Designing and implementing a graphical user interface for the system.
- 1996–2000: Teaching (as Ph.D. student)
- Tutored second-year undergraduates in Artificial Intelligence; including
setting and marking work.
- Assisted in undergraduate labs on 68000 assembly language and C++
programming.
ACADEMIC RECORD
TECHNICAL KNOWLEDGE
My main languages are:
Java,
Perl and
MHEG-5*.
Recently I have also been using:
HbbTV† and
JavaScript
(both in HTML pages and in Node.js servers).
My programming experience, much of which involves object-oriented
code, includes:
Writing CGI scripts for web-based data
entry to Content Production/Management Systems.
Writing programs to convert CPMS input
and output between XML and other formats.
Creating GUIs with Swing, Perl/Tk and
Microsoft Foundation Classes.
Creating graphical design
tools to allow WYSIWYG development of interactive TV.
Writing complete interactive TV
applications in MHEG-5 and HbbTV.
I also have some knowledge of C++, Lisp, Ada '83 and GNU M4.
* Used on Freeview and Freesat set-top boxes in the UK, and around
the world.
† An up-and-coming interactive TV development environment, based
around the use of HTML and JavaScript, to the use of which Freeview is
beginning to plan migrating.
I have experience working in both *nix (Unix, Linux, SunOs) and Windows; and am
familiar with Subversion, CVS and Microsoft SourceSafe for version control. I
am also an advocate of Agile and Extreme Programming development methodologies,
such as test-driven development, to ensure robust systems with low requirements
for maintenance.