The Markit Enterprise Data Management (EDM) platform allows clients to gain control and visibility over their data. EDM empowers those who understand the data to manage it, no matter the complexity, volume or scope of the project. Across the EDM client base the platform handles many terabytes of data daily, and provides a core function to many large financial institutions. Markit EDM is built in .NET and makes use of SQL Server, as well as supporting many message queue technologies.
As CTO I am responsible for the technical direction and delivery of Markit EDM. Talking with clients and consultants I shape the roadmap to fill gaps and take the product into different scenarios.
Yammer is an enterprise social network which was acquired by Microsoft in 2012. I was moved from Australia to join the London frontend team as a Senior JavaScript engineer. The engineering style of Yammer is very product focused and engineers are encouraged to play an active role in shaping the product. As a senior engineer on the frontend team I'm responsible for mentoring others in the team as well as staying on top of the architectural decisions that are being made.
Alphashack is an incubator for products, which has suited my full stack skills. The primary product that I worked on is Graphdat, a real time server and application visualisation platform. This product had many challenges involved in scaling the system to deal with large volumes of incoming data while concurrently serving aggregates in real time. Working in a small team I've worked across the whole stack jumping into code as needed. The product is fully functional and can be seen at http://www.graphdat.com. The whole backend codebase is written in Node.js and is designed to scale horizontally across many servers in the cloud. Canvas and CSS3 are used on the frontend to create a great end-user experience. Being a full stack engineer has meant that I’ve written and modified all parts of the application – this includes writing a PHP extension in C.
The product I worked on in this position is the iOS (iPhone and iPad) remote for the fetchtv set-top box. The application uses a comet system to communicate to the set-top box, some of the more challenging aspects of this process was ensuring that the communication would operate outside the home over 3G as well as on WiFi indoors. We initial produced a prototype using sencha-touch but then elected to write in native Objective-C to optimise . My role involved working on majority of the low level communications and API creation for use by the rest of the team.
As a solution architect I was responsible for the translation of business requirements into functional requirements for the development team. The main responsibilities of this role was to ensure that the various products of the company collaborated well together and that the appropriate technologies were employed. As well as filling the role of solution architect I was also the team leader for the Viostream platform team. The Viostream platform is the video streaming and asset management offering from Viocorp. I was required to both design and develop features for this platform to suit the needs of Viocorp’s clients.
Amongst my accomplishments in this position, I filled in as team lead for the Viomedia Product team for the development of a catch-up TV solution for Malaysia’s largest broadcaster. This proved to be an incredibly challenging task in that I was required to take an existing CMS and rework it to suit the catch-up TV requirements, an outcome that I managed to achieve. The project, which was the largest IPTV deployment is Asaia was finished on time and has since changed the browsing habits for the viewers of the client. This role also enabled me to develop my skills as a leader.
As a .NET developer my primary job was to build and skin video portals for major banking institutions, national tourism bodies and large multinationals. I worked to tight deadlines to create an individual look and feel to each client’s video portal.
In additional to building and skinning video portals I rebuilt the interface to the core management system used for managing client media. This involved rethinking the usability of the existing system and introducing a “Web 2.0” feel to the site. Working within a small, core team the entire interface and workflow for clients was reinvented within three months.
My major accomplishment was a Javascript embed framework that that supports the embedding of Adobe Flash, Windows Media and Apple Quicktime content onto a site whilst allowing the user to change between formats. The framework is completely encapsulated and does not make use of any other Javascript library. The system makes use of a degrading tag system that allows for the embed system to also be used in an AJAX environment. The end result was that clients could paste an embed code into their CMS and serve online video to their viewers regardless of platform.
I was offered the position of associate software engineer in the American based office and spent a year working on various projects. I spent a significant amount of time converting old ASP applications into ASP.NET in order to better meet changing business needs. An example of this was a generic document templating system that I single handedly built using XML and Xquery to replace the existing Knowledge Base system. The document layout and submitted data was stored in XML. On rendering Xquery methods were used to select and update the information stored in SQL.
I was also part of the team that rebuilt DataBuffet.com from the ground up. Using a C# for the backend and jQuery for the frontend, we created a responsive, robust chart and mapping tool for use with the company's data warehouse (FAME). For this project I wrote various jQuery plugins to streamline the frontend processes. On the backend various VB6, C++ and SQL pieces of code had to be rewritten. The project included creating webservices to store and retrieve economic data for charts and/or maps .
Possibly the more challenging project I undertook was adding a coupon to the existing shopping cart system. Due to the nature of the existing system I had to graft the coupon system using only SQL. This involved building all the pieces and systematically integrating them into the live system to minimize disruption to the service. This was problematic as the system had been written over 10 years prior. The end product was that the company finished with a robust coupons system that allowed for a variety of options from bundles to bulk discounts.
Finance Major with sub-majors in Economics and Information Technology. One semester was spent on exchange in the Netherlands at Erasmus University Rotterdam