Simon Wood
IME Indic Languages Tech Lead at SwiftKey- Claim this Profile
Click to upgrade to our gold package
for the full feature experience.
Topline Score
Bio
Experience
-
SwiftKey
-
United Kingdom
-
Information Technology & Services
-
1 - 100 Employee
-
IME Indic Languages Tech Lead
-
May 2012 - Present
-
-
-
Glu Mobile
-
United States
-
Computer Games
-
200 - 300 Employee
-
Software Architect
-
Aug 2010 - May 2012
-
-
-
-
Software Engineer
-
Mar 2010 - Aug 2010
I worked on automating an ad hoc process. The process generates Language Models for use in text prediction software. I worked on automating an ad hoc process. The process generates Language Models for use in text prediction software.
-
-
-
-
Senior Software Engineer
-
Mar 2007 - Nov 2009
Cabletime Ltd. builds equipment to allow media distribution within a building. They have analog and digital solutions. The digital solution works over a TCP/IP network. I joined the company as a Senior Software Engineer with the remit of putting processes in place to improve the quality of the code produced. The main emphasis initially was on unit testing and continuous integration. In August 2007 I was made Software Manager. I still had the remit of putting processes in place although I found I had less time available to spend on that area of work. Over time this role become completely managerial; for this reason, in April 2008 I reverted to a Senior Software Engineer role. I am now working on the digital product line. The digital product is an embedded Linux system written in C++ and script. Show less
-
-
-
-
Senior Software Engineer
-
Jan 2007 - Mar 2007
Ideaworks3D develop games and a cross-platform games framework for mobile devices. The game framework provides a common API across disparate platforms. This severely reduces the porting process of a game to a new platform. I joined the framework team as a Senior Software Engineer. Within the first month I was put in change of the framework SDK. The first release of the SDK was due in about a months time so I could not really influence the first release. However, I was able to improve the consistency of the API before the first release. Show less
-
-
-
-
Team Leader
-
Oct 2005 - Nov 2006
Intuwave Ltd. develops middleware for mobile phones. The software provides a consistent interface to phone functionality across many devices. The software runs on Symbian and Microsoft platforms. I was the Team Leader for the development of the system on Java devices. This work was nearing completion when the company went into receivership. The first Java version targeted BlackBerry devices. The BlackBerry platform has limitations that necessitate some complex solutions to achieve the required functionality. In particular the solution requires the implementation of a cooperative multitasking subsystem. This architecture was designed by me and the company’s Software Architect. I developed the PC-side communication software. This allows the device-side software to be controlled from the PC command line. This included the implementation of a multiplexing protocol to overcome a limitation in the Blackberry’s implementation of USB and Bluetooth. The software allowed for multiple connections to multiple devices other USB and two different Bluetooth stacks. Show less
-
-
-
-
Senior Software Engineer
-
2000 - 2005
Most recently I was working on a generic build system for use by all of the games developers. Games developed with the build system should be buildable immediately on any machine that has the build system installed on it. Prior to that I developed an application framework for mobile devices. The intention was that the framework would hide all of the inconsistencies between different devices and provide all the boilerplate code. This would allow the developer to concentrate on the application specific code. Another consequence is that porting becomes easier, only the application specific code needs to be ported. This was achieved for J2ME, a BREW port is currently in progress for use in a game being developed in-house. Prior to that I led a team that developed the TCK for JSR-184. JSR-184 specifies an API for 3D under J2ME. Superscape and Nokia were instrumental in developing the standard. I played some part in the development of the standard as a consequence of doing the TCK. Recently, I completed the update of the TCK for version 1.1 of JSR-184. The TCK was developed in Java. Anything that could be automatically generated was. All the documentation was generated from XML source using XSLT stylesheets. Prior to that I developed the Java API for the 3D engine developed by Superscape. This was done by automatic code generation from an XML definition of the API. API documentation was also generated from the XML source. I developed the XSLT stylesheets to achieve these transformations. Prior to that I was involved in the development of the 3D engine. In particular I worked on the design and implementation of the animation system. Show less
-
-
-
-
Software Engineer
-
Jun 1999 - Jun 2000
Cabletime Ltd. produces television distribution and video conferencing systems. I was a member of the product development team. My work here involved enhancements and bug fixes on the current system. One enhancement I done was to incorporate NetMeeting into the Video Conferencing system, so that T.120 data sharing could be utilised by a conference. This proved not to be straight forward as NetMeeting is peer to peer and the Video Conferencing system is not. As a low priority task I am also writing an NT kernel mode device driver to control a hardware watchdog in a 2U computer. This will allow multiple processes to use the watchdog simultaneously. At present NT cannot use the watchdog at all as no driver exists for it. We are currently starting work on the new IPTV system, due for completion at end of the second quarter. At this stage this mainly involves high level design and investigation. All this work has been carried out in Visual C++ with MFC and C on Windows NT. Show less
-
-
-
-
Senior Software Engineer
-
May 1997 - Jun 1999
Black Sheep Design makes use of Superscape virtual reality software to implement games and websites. Superscape provides an SDK to allow extension of the products capabilities; this forms a large part of the work I do. While here I have been involved in three games titles, namely ‘Nightmare in the Toy Factory’, ‘LoveBytes’, and ‘Republic’ which is due for release in September. I have recently finished work on the beta release of ‘Republic’, which I have been working on full-time for about 18 months. This title uses the Superscape 3D Control as the 3D engine for the game. My work involved writing the user interface in which the control was embedded and providing some 100+ extra functions for the Control through the Superscape SDK. These extra functions included a set of commands to allow the 3D Control to control a ‘zoom’ window, which contains a background bitmap, sprites and activation areas. These ‘zoom’ windows make use of DirectDraw. I have also used DirectSound extensively in the user interface. All this work was carried out in Visual C++ with MFC and C with Windows API on Windows 95. Show less
-
-
-
-
Software Engineer
-
Jun 1996 - Apr 1997
From joining the company until January 1997 I worked in the Product Development department as a Windows programmer in the current products section. The main work carried out in this period was porting the DOS version of the authoring product to Windows. My contribution there mainly involved porting three of the editors in the package. I also added DDE server capability to the product during this period. I also prototyped an OLE control version of one of the visualisation products. All this work was carried out in Visual C++ with MFC and C with Windows API on Windows 95. In January 1997 I transferred to the Strategic Relations department. This department looked after the relationships with Microsoft, Intel and BlackSun. In this role I integrated any new or useful technology into the product using the Superscape SDK. My first project was to integrate ActiveMovie technology into the product. This allows a movie to be played on a facet in a Superscape world. The existing sound device in the product had high latency and limited sound quality. As a consequence of this work I wrote a new sound device for the product making use of DirectSound. This provided considerably lower latency and better sound quality, the lower latency meant that the sound and the video of the movie were synchronised. I then moved on to implementing 3D sound in the replacement sound device. This role involved working with leading edge technology often in beta release. All this work was carried out in Visual C++ with MFC and C with Windows API on Windows 95. Show less
-
-
-
-
Software Engineer
-
May 1994 - Jun 1996
Racal Datacomm is a data communications company that develops WAN connectivity solutions for PCs. My main area of employment was writing Windows applications to monitor the WAN software (e.g. line status indication applications and line monitoring applications) and configuration applications for the WAN software (e.g. hardware options and protocol configuration). All of the work was carried out in C and Windows API or C++ and MFC. Most of the applications had to work on 16 and 32 bit platforms, in particular Windows for Workgroups 3.11, Windows NT 3.50 and 3.51, and Windows 95. Towards the end of my employment with Racal I wrote Windows NT kernel mode device drivers that sit on top of a Software Forge ISDN card and provide an interface simulating a Terminal Adapter attached to a serial port. Show less
-
-
-
-
Software Engineer
-
Jan 1992 - May 1994
Whilst at GEC I developed a Windows 3.1 based application to allow a proprietary SCADA package to communicate with a real time embedded control system. The application talked to hardware to get the data to be monitored and passed on the requested data to the SCADA package via DDE. The application had to monitor data from a Sequence of Events Recorder attached to a serial port and from a control system attached to the PC via a Transputer card in the PC. To talk to the serial port I developed a library of routines to handle interrupt driven RS232 communications. To talk to the Transputer card I developed a Windows 3.1 installable device driver. Prior to this development I worked on the real time embedded control system that the SCADA package monitored. The control system was built around Transputers and hence this development work was carried out in OCCAM. The embedded system controlled HVDC power transmission. Show less
-
-
-
-
Software Engineer
-
Aug 1990 - Jan 1992
The company provides PC to VAX communications. Initially I was working on the PC communications software. The work involved the integration of the VIA print protocol used over PRESTEL into the PC software. I then moved onto development on the VAX communication software, this involved the development of many library routines for use throughout the system and also the maintenance of the in house implementation of the KERMIT file transfer protocol. Latterly I was heavily involved in conceiving standards for use by the company on the road to achieving BS5750 accreditation, mainly in the area of language standards and the recommended use of VAX utilities. Concurrently with the work on the standards I was involved in the development and implementation of a protocol for fast file transfer over MPN modem links. Show less
-
-
-
-
Software Engineer
-
Apr 1990 - Aug 1990
Undertaken as a six month industrial placement period as required for the MSc. I worked on a Windows based communications package. I worked on TSRs for the package; these TSRs performed low level communications using various network protocols (all of the protocols were implemented in third party libraries). I also maintained the packages installation program throughout my stay at the company; this also involved the development of a Windows version of the installation program. Undertaken as a six month industrial placement period as required for the MSc. I worked on a Windows based communications package. I worked on TSRs for the package; these TSRs performed low level communications using various network protocols (all of the protocols were implemented in third party libraries). I also maintained the packages installation program throughout my stay at the company; this also involved the development of a Windows version of the installation program.
-
-
-
-
Software Engineer
-
Oct 1987 - Oct 1989
This work involved development and research into an engineering design environment with particular reference to electronic engineering. The environment enabled engineers to proceed from the conceptualisation to fabrication of a project within one environment; in particular the work involved the development of an Algorithmic State Machine chart design facility. This work involved development and research into an engineering design environment with particular reference to electronic engineering. The environment enabled engineers to proceed from the conceptualisation to fabrication of a project within one environment; in particular the work involved the development of an Algorithmic State Machine chart design facility.
-
-
Education
-
Staffordshire University