Building Secure-Wipe
During my practicum with the Town of Taber, I had the opportunity to work on a project that brought together systems support, scripting, documentation, and problem-solving: Secure-Wipe. The idea behind the project was to create a more reliable and repeatable way to sanitize drives in a real IT environment. Instead of depending on a collection of manual steps or ad hoc tools, I wanted to build something that could be booted into directly, used consistently, and supported with clear documentation.
Secure-Wipe is a terminal-first drive sanitation workflow packaged as a boot-able Debian-based live ISO. That design choice was intentional. In IT support, especially in environments where hardware handling and data removal need to be handled carefully, simplicity and consistency matter. A dedicated live environment removes a lot of the uncertainty that can come with using a general-purpose operating system. It gives the operator a focused tool-set for a focused task.
One of the main goals of the project was to make the workflow practical for day-to-day use. I built the system so that it can be installed to USB, boot directly into the Secure-Wipe environment, and launch the application automatically. Once the live system starts, the operator is brought into a streamlined interface where they can start a job, restart pending jobs, view reports, inspect logs, adjust configuration, or access maintenance tools. The interface is intentionally simple and terminal-based, because the priority is clarity and reliability rather than visual complexity.
A key part of the project was making the build and deployment process repeatable. The repository includes scripts to build the ISO, write it to USB, and update the ISO while preserving output data (I did not get this working properly, but your mileage may vary). This made the project feel more like a real operational tool rather than just a one-off script or prototype. It also reinforced an important lesson for me: software used in support environments needs to be maintainable as well as functional.
Another focus was persistence and traceability. Secure-Wipe supports an output partition on the USB drive so that reports, logs, and other data can be retained across sessions. That matters in environments where you need to verify what happened during a wipe operation or preserve information for later review. I also built the configuration system so settings can be updated from inside the application and saved back to the configuration file, which helps the tool stay flexible without making it harder to use.
The project also pushed me to think carefully about the user experience from an operator’s perspective. A drive-wiping workflow is not something where ambiguity is acceptable. If the process is unclear, the risk of error increases. That is why the Secure-Wipe environment uses numeric menu navigation, clear launch behaviour, and supporting documentation that explains how to build, install, and use the system. I spent a lot of time making sure the documentation matched the actual workflow, because good documentation is part of the product in a project like this.
From a technical standpoint, Secure-Wipe helped me strengthen several practical skills. I worked through shell scripting, Linux live system setup, ISO build flow design, and operational documentation. I also had to balance the technical side with the support side, since the final result needed to be understandable and usable by someone doing the work in the field. That combination of development and systems thinking is what made the project especially valuable to me.
What I found most meaningful about Secure-Wipe is that it solves a real operational problem in a way that is easy to repeat and support. It is not just a coding exercise. It is a tool shaped around a real use case, with an emphasis on reliability, safety, and clarity. That aligns closely with the kind of work I enjoy most: troubleshooting, systems support, and building practical tools that make technical work easier for others.
Though I intended for this software to be installed on a USB stick technically you could set this up to boot off PXE boot with storage attached on the network. This would mean that your reports and logs are even more securely saved elsewhere that a USB that you carry around.
This project was a strong example of applied learning during my practicum. It gave me the chance to build something useful, document it clearly, and think through the full workflow from build process to day-to-day operation. More importantly, it showed me how software can improve consistency in IT operations when it is designed around real-world needs.
I do plan to revisit this and make some adjustments in due time and feel free to make forks or suggest changes on GitHub.