Name: Osku Salerma
Education: Computer Science, University of Helsinki 1998-2002.
Master's thesis written in 10/2005 - 1/2006.
Language skills: Finnish: Native, English: Excellent.
Programming languages: C, C++, Python, Perl, Java.
Work experience:
6/2010 - now, Associate, Morgan Stanley. London, UK.
Worked on smart order routing systems. (C++, Unix)
9/2007 - 5/2010, Associate, Morgan Stanley. Tokyo, Japan.
C++/Linux development and support in the Equities Trading Infrastructure team. Software development team lead. In more detail:
- Maintained the codebase that checks FIX orders against
internal/external limits and regulations. Especially actively worked on
the Japan-specific checks, where a notable achievement was optimizing
their runtime performance (the latency the checks add to each order
executed in Japan) by 2705%.
- Designed and implemented time-based limits: keep track of orders sent within a defined time period, group them in one or more buckets (example: exchange-specific limits, trader-specific limits), and hold/reject new orders if the cumulative values (such as notional value or quantity) in any bucket go over the defined limit for that bucket.
- Maintained the internally developed scripting language that is used for matching/modifying FIX messages across the firm. Optimized its runtime performance by 46%. Analyzed common errors people made using the language and implemented validation checks to detect the errors automatically. Designed the next generation of the language and wrote a prototype implementation in Python.
- Maintained/wrote other code like database caching layers, latency analysis tools, testing frameworks, etc.
2/2007 - 8/2007, Senior Consultant, Fusion Systems Japan. Tokyo, Japan.
Team lead on a web-based survey application developed for a marketing company, and on associated applications for managing the surveys and analyzing the results. (Java, OLAP)
8/2005 - 1/2007, Software Engineer, Innobase. Helsinki,
Finland.
Bought by Oracle 10/2005.
Worked on the InnoDB database storage engine (part of MySQL). (C/C++, Unix)
- Designed and partially implemented support for a Full Text Search index.
- Implemented buffering of deletes, speeding them up substantially in some cases.
- Enhanced InnoDB's internal SQL interpreter by adding support for bound variables, function callbacks, BLOB types, lock waits, consistent reads, etc.
- Fixed scalability and memory usage problems.
- Set up and maintained various services: Subversion, wiki, instant messaging, backup, etc.
11/2002 - 7/2005, Software Engineer, Cardinal Systems. Helsinki,
Finland.
Had a central role in designing, implementing and maintaining a complete digital TV transmission system on a C++/Linux platform that consisted of multiple multi-threaded processes interacting with each other and external software/hardware (PostgreSQL, DVB-ASI output cards, etc.) in soft real-time. Other items of note:
- Wrote a utility library in C++ with dynamically loadable database interfaces, socket wrapper classes, XML classes, etc.
- Wrote an MPEG-2 I-Frame decoder in Java.
- Wrote MHP EPG (Electronic Program Guide) components for Cardinal Studio in Java.
- Implemented build infrastructure and automated testing frameworks in Python.
- Helped customize an internal Linux distribution based on Fedora Core.
- Was responsible for the version control systems used in the company.
- Wrote C++ coding style guidelines for company-wide use.
5/2001 - 9/2002, Software Engineer, Bonum IT. Helsinki,
Finland.
Part-time during studying, full-time
otherwise (~5 months/year).
Designed, implemented and maintained GUI software for real-time stock trading and developed connectivity modules for the Helsinki and Stockholm stock exchange protocols. (C++, Windows NT)
4/1998 - 2/2001, Software Engineer, Soittorasia. Espoo,
Finland.
Part-time during studying, full-time
otherwise (~5 months/year).
Designed and implemented PC-based music playing systems, database software, Internet-based music distribution systems, SMS-message handling software, etc. (C++, Windows NT, Linux)
1997, Independent contractor, KCL. Espoo, Finland.
Created two control systems for industrial machinery. (C/C++, DOS)
Other:
Founded and ran a company (Oskusoft) during 2004-2006 that sold software (written in Python) for writing movie screenplays.
Contributed a patch to GCC adding support for the may_alias attribute, which can be used to bypass the aliasing rules in C/C++ on a per-variable basis, and minor participations in other free software projects.