Dean Turpin -- Senior Software Engineer
Senior software engineer with 20+ years of commercial experience. Motivated self-learner, advocate of modern C++, Linux, automation and knowledge sharing.
- Languages: C++20/23, Bash, Python, Haskell; OOP, Functional
- Design: Multithreading, Data Structures, Algorithms
- Build: QtCreator, VS Code, GNU Make, CMake, Ninja, Visual Studio
- Source control: Git, Gerrit, Subversion
- CI/CD: GitLab, Jenkins, TDD, Profiling
- Google: Benchmark, Test, Cloud
- Networking: TCP/UDP, OSI, Wireshark
- Platforms: Linux, ARM, Windows 11
- Documentation: GitHub Copilot, ChatGPT, Doxygen, Mermaid
- Protocols: FIX, XMPP, SIP, gSOAP, PCM
- Dev: Agile, Jira, Slack, Security Clearance
- Education: Computer Science BSc. 2:2 from Manchester University
C++ experience and side-projects
Commercially I develop using C++17, so I feel it is important to explore the latest C++ features in my personal projects. These cover topics such as audio processing, trading strategy back-testing and OpenAI.
I'm an advocate of ad-hoc scripting for rapid development of ideas, and I believe a solid foundation in ubiquitous languages like Bash and Python is essential in CI and cloud computing. I also have an interest in a more functional approach offered by compile-time programming and Haskell.
See my personal project pipelines: https://deanturp.in/
C++
C++ concurrency support library
Daily FX/crypto backtester
Teach yourself C++ in 45 years -- training material using OpenAI
C++ recipes
Discrete Fourier transforms in C++23 -- Fourier analysis without 3rd-party libraries
Web
Online logbook -- using GitBook
Static website generator -- a one line website generator (maybe two)
Check my websites are up -- top level domain topology
GitLab CI pipelines -- this web page
Misc
Command line OpenAI wrapper
OpenAI sandbox
Haskell energy usage calculations
Curated list of tech quotes
Skills timeline generator in R
Blender renders
Watchmaking resources
Building projects
Airbnb landing page
Brighton recommendations
Top level domains
Toolbox
C++ | git | Linux | Compiler | Issues | Misc | |
---|---|---|---|---|---|---|
Day job | C++17 | GitLab on prem | Ubuntu 20.04 (Focal Fossa) | g++ 9 | GitLab issues | Qt 5.15.2, CMake, clang-format, Wirehshark, bash, DBeaver, vim |
By night | C++23 | gitlab.com | Ubuntu 23.04 (Lunar Lobster) | g++ 12.2 | GitLab issues | GitLab VS Code web IDE, Google Cloud Platform (Sapphire Rapids), FIX, GoogleTest/Benchmark, Linux kernel 6.2, ChatGPT, GitHub Copilot, Python 3.11.2, CMake 3.25.1 |
Skills timeline
Influential technology
Technologies that have had a positive, lasting impact on me as a developer.
- 2023: Google Benchmark, Haskell, ChatGPT,
shellcheck
, Sapphire Rapids, AVX, GitHub Copilot - 2022: SIP, GitBook, Compiler Explorer (on prem), GitLab (on prem), GitLab service desk, git worktrees, FIX,
constexpr
(for UB), GoogleTest, VS Code web IDE - 2021:
std::format
, TMP, C++20 ranges and views (lazy evaluation) - 2020: Blender, Media servers, ZeroMQ, Tracy profiler, Raspberry Pi
- 2019: Cloud computing, R/notebooks, GitLab, Hugo
- 2018: Docker
- 2017: Cryptocurrency, blockchain
- 2016: C++1z
- 2015: git, GitHub
- Rendered with ♥ on Thu Apr 20 19:52:54 UTC 2023 by an Ubuntu 9 (stretch) VM
- Last commit message "review"
- Quote of the day "Multithreading is just one damn thing after, before, or simultaneous with another - Scott Meyers and Andrei Alexandrescu"