Utilised an Access database to contain the rating data
Ability to search on full or partial postcodes
Quickly allowed household insurance operators to assess the risk score of a specific postcode with one of the insurers on their panel
.exe file contained on a central server; each client ran the program via an SMB-shared shortcut to the server allowing for easy updates
Data merge tool for large datasets – Java
Regular exports of data files totalling 50GB (two sets of files, 40GB and 10GB) from two sources with identical data schemas
Required fast, reliable solution to merge the data files and correctly package them for use
Used Java for its speed in manipulating text files, cross-platform capabilities and extensibility
Other Use Cases
Used Objective-C to fix bugs relating to changes in iOS7 on an iPhone app; additionally added basic but new functionality to the app (May 2014)
Used C# .NET to implement SAML SSO capabilities to a Classic ASP codebase, where the SSO authentication service is PHP-based (January 2014)
Used C# .NET working on a personal project to scan a database of website URLs for basic availability checking. Interacted with a central PHP API to provide the ability to run multiple “scanning” nodes, giving potential for development of a website availability service. The project’s main aim was to learn and demonstrate the use of multi threading within the .NET framework.
Perl was used extensively to power internal software requirements at a previous employed role, including:
Processing reports generated from a Tripos-based insurance brokerage system
Manipulation of PCL files to read/write data before printing
Development of an internal intranet system with deny first permissions for staff
Development of the first version of an email queue processing system which allowed the sending of dynamic HTML emails with insurance policy document attachments based on brand, product and document type. Integrated with MSMQ to obtain the messages (one message per section of email), construct the messages in the correct order and build/send the email. It wasn’t uncommon for 7 or 8 MSMQ messages to exist per mail message. This was initially developed in Perl.
Used Perl to develop an email archiving system processing any emails sent or received through the email server software FTGate. FTGate’s own scripting language was used to initially save each email as a text file, which was then picked up by Perl and processed. Email header data was stored in a MySQL database, with content chunks stored as 512KB blocks in MySQL tables for optimised storage and speed to reconstruct a message. The solution was processing upwards of 10,000 messages a day and the content tables (which I named “RAS” tables – or Resource Allocation Storage tables) were balanced so that each one contained a relatively equal amount of data. Searching the archive could take as little as 5 or so seconds to search a month of data after the database had been tweaked with indexes and other optimisations.If I were to undertake this same project now, I would utilise NoSQL technologies such as MongoDB to store at least the email content.