Alex Brown (@SoftlySplinter)
Publications
Can we date an artist's work from catalogue photographs?
Using image processing techniques, such as colour-space analysis, image filtering, and other digitial image analysis tools to predict the date a piece of artwork was produced using k-nearest neighbour (kNN) classiciation and leave-one-out cross-validation (LOOCV) to rank how succesful each technique was. Contrasted with exemplars picked by a domain expert. All to answer the question, "Can we date an artist's work from catalogue photographs?".
2013 8th International Symposium on Image and Signal Processing and Analysis (ISPA), Trieste, Italy
2013
Python, OpenCV2, LaTeX
Open source
OpenTelemetry Java
Reported and fixed an issue where the JdkHttpSender class was creating non-daemon threads,
which could prevent the clean exit of the Java virtual machine (JVM), and fixed a GitHub build actions.
Java, GitHub Actions, OpenTelemetry
CICSdev
Created, maintained, and improved code samples for CICS Java functions, ranging from OSGi, Liberty web-applications, CICS event processing and more.
CICS TS for z/OS, Java, GitHub Actions, Java/Jakarta EE, OSGi, SpringBoot
Work
IBM
Advisory Software Engineer
TODOMay 2022 → Current
- Java
- C
- z/OS high-level Assembly (HLASM)
- Python
- PL/x
- OSGi
- Java EE
- Jakarta EE
- CICS TS for z/OS
- WebSphere Liberty
- OpenTelemetry
Software Engineer
TODOAugust 2018 → May 2022
- Java
- C
- z/OS high-level Assembly (HLASM)
- PL/x
- OSGi
- Java/Jakarta EE
- CICS TS for z/OS
- Wastson Machine Learning for z/OS (WMLz)
- WebSphere Liberty
Associate Software Engineer
Tested the integration of many Java EE 7 features with CICS TS for z/OS, particularly focusing on areas of security, threading and the JCICS APIs (EJB Lite 3.2, Concurrency, EJB 3.2 [Remote, Persistent Timers, etc.], JCA 1.7 inbound security)
Produced Open Beta education for the CICS TS for 5.4 Java Hill
Tested numerous APAR fixes
November 2015 → August 2018
Java, Java EE, CICS TS for z/OS, WebSphere Liberty
Graduate Software Engineer
Responsible for functional testing of CICS Liberty JVM server Java EE features, including Contexts and Dependency Injection (CDI) and Managed Beans
Responsible for the functional and system testing of APAR PI25503; z/OS Connect support for CICS Liberty JVM servers, using a risk-based approach to target key areas.
Defect fixing in the JVM server and Liberty JVM server domains.
July 2014 → November 2015
Java, Java EE, CICS TS for z/OS, WebSphere Liberty
Aberystwyth University
Advisor
Responsible for running a drop-in service to help students with understanding course material or extra-curricular projects. Problems range from debugging to software installation to theoretical understanding.
Responsible for the sign-off of assessed worksheets in the practical sessions for the "Introduction to Computer Operating Systems, Hardware and UNIX Tools" and "Concepts in Programming" first year modules. The first of the modules focused on the use of the UNIX command-line environment and the second of these modules taught development of basic Java and Haskell applications.
September 2013 → June 2014
Demonstrator
Assisted with the running of a STEM event which taught basic Linux shell commands to Year 9 students.
Febuary 2014 → Febuary 2014
Demonstrator
Responsible for the sign-off of assessed worksheets in the practical sessions for the "Introduction to Databases" first year module. This module focused on the Microsoft Access Database (including queries, reports, graphs, etc.), Entity Relationship diagrams and other basic database concepts.
October 2012 → January 2014
Aberystwyth Technocamps
Demonstrator
Helping 11-19 year old young adults to build autonomous robots and program Android applications as part of the Technocamps project.
October 2012 → January 2014
IBM
Undergraduate Software Engineer
Responsible for designing and developing useful Java-based tools for the CICS Level 3 Service team, including an eclipse plug-in to print out information required for code reviews and a large system to automate the delivery of fix patches for CICS Eclipse-based products, which hooked into many internal systems.
Helped gather requirements to apply to a system designed to be used by all Level 3 Service teams so that the CICS team would not be disrupted in their work and attended meeting to discuss the development of this system.
Maintained and improved several systems for generating statistics for problem reports and the processes for fixing these problems, including a Java Enterprise server and DB2 database hosted on a CentOS Enterprise Linux server.
Lead a team of three IBM employees to run a Java-master at Swanmore School of Technology, to get school children aged 13-15 years introduced to programming in the Java programming language at a basic level.
Helped teach several Java sessions internally within IBM to help members of the Level 3 CICS Service team and Industrial Trainees gain the skills and knowledge needed to use Java in their jobs. Mentored by an ex-lecturer from the University of Southampton to help decide the content of these sessions and the teaching style involved.
Organised the inductions for the 2012-13 intake of Industrial Trainees for their first two days at IBM, requiring the networking with both managers of each trainee to ensure they had the equipment and logins for their roles, as well as members of upper-management to present introductory talks at each of the three inductions. This was done as part of a team of three, with the help of industrial trainee and graduate managers.
Member of the SmartCursor/SmartMouse continuation project, Researched Hidden Markov Models to improve gesture recognition and programmed basic 3D visualisation.
June 2011 → July 2012
Master of Engineering (MEng) Software Engineering
Combined Bachelor of Science (BSC) and Master of Science (MSC) degree in sofware engineering, focusing on AI, machine learning, software development processes, networking, systems administration, etc.
Aberystwyth University