Hi, I'm rubenwardy
I’m a software developer, an open source contributor, and a graduate from the University of Bristol. I’m a core developer for Minetest, an open source voxel game engine.
I have a diverse range of interests, both technical and non-technical. Some examples include User Interfaces / User Experience, game dev, electronics, and physics.
Tip: hover over tiles to see descriptions.
Games and Graphics
Electronics and Robotics
I post in-depth tutorials and articles on my projects on my blog around once a month. See below for the most recent posts.
- 22 June 2022 GPT-3/Codex: An AI that can write Minetest mods… kinda
- 24 March 2022 Developing ContentDB
- 19 March 2022 Tin Mining - Ludum Dare 48 post-mortem
- 17 March 2022 IoT Plant Monitor using ESP32
- 15 May 2021 My Computer and Server
- 08 May 2021 Securing Markdown user content with Mozilla Bleach
- 13 September 2020 ForumMate: My return to Android app development
- Software Engineer June 2022 - Present
Capgemini EngineeringSoftware Engineer Sep 2019 - May 2022
Working on an analysis tool for the rail industry, using React and TypeScript.
Worked on infrastructure for running physics calculations in the cloud, using Python, Flask, Celery, OpenShift/Kubernetes, MongoDB, and Docker.
Worked on jet engine noise prediction software and desktop GUI applications, written in C# WPF and Java Swing.
Increased team productivity by pioneering an automated Jenkins CI pipeline to run unit and UI tests. This freed developers up for 15 minutes each invocation, resulting in team savings of more than an hour per day.
Commended for the ability to quickly ramp up on new projects, and efficiency in producing work.
Participated in agile / scrum development with daily stand-ups and planned sprints, and performed test driven development and peer code review.
ArmLinux Kernel and Android Intern Jun - Aug 2018
As part of a Research and Development team, I worked on experimental changes to the Linux kernel to improve memory security on Android. The aim of these changes was to protect Android devices from both local and remote threats, such as malicious applications or networked actors. A typical task involved making changes in C and ARM Assembly to the Linux kernel, and then modifying user-space C++ tests to verify correctness.
GWS MediaAndroid and Backend Developer Mar - Dec 2017
I worked part time as an Android, iOS, and Backend developer for 9 months alongside my studies, gaining valuable experience in client interaction and agile development. I worked on a number of different projects, both individually and as part of a team. I took pride in ensuring that my work was delivered to the highest standard, following platform design guidelines and best practices. One such app.
MinetestCore Developer and Contributor Aug 2012 - Present
Minetest is an open-source voxel game engine, which I am a maintainer for. I regularly review pull requests, and have contributed over 100 patches.
Things I’ve directly contributed include:
- An in-menu installer and package manager, and a backend for it called ContentDB.
- The Minetest Modding Book.
- Lua assertation and integration testing framework, to improve quality assurance and prevent regressions.
- Assorted GUI features, including styling and a shared inventory GUI library.
I attended as an official exhibitor at both Freenode Live conferences, in 2017 and 2018.
Participating in this project has given me a proficiency in Git, Linux, and collaboration.
Here is a selection of things I've had experience with.
Languages and Libraries
- C/C++17: STL, Sockets, SFML, SDL2.
- Java/Kotlin: Android SDK.
- Python: Flask, BeautifulSoup, Celery, SQLAlchemy.
- HTML/CSS: Bootstrap, Bulma, Jekyll, Jinja2, Liquid, SASS.
- Git, Git Flow, and SemVer.
- CMake, Make, and Ninja.
- Clang/GCC, gcov, LLDB/GDB, and Valgrind.
- Docker, Jenkins, and OpenShift.
- GIMP, InkScape, Blender, and KDENLive.
- Has mentored junior developers and apprentices.
- Experienced with Git and Git Flow. Knows rebasing, cherry-picking, and more.
- Open Source contributor.
- Writes high quality technical documentation. See my book.
Want to see more?
Take a look at my blog, Twitter, Github, or YouTube accounts.