Project Lead & Software Engineer at Bechtel (2024-07 – 2024-08)
Led a multidisciplinary team of 4 across three engineering projects with mentorship from a senior project manager
- Led a multidisciplinary team of 4 - including civil, financial, and data analysis roles across three engineering projects, with mentorship from a senior project manager
- Conducted a feasibility study for a rural water supply system, navigating spatial limitations and strict sanitation zoning constraints to prevent contamination while managing budget, accessibility, and terrain considerations
- Applied Critical Path Method (CPM) to optimise project timelines for a communications network deployment across multiple villages; balancing cost, stakeholder goals, and delivery efficiency
- Programmed a weighted A* pathfinding algorithm in Python to identify optimal locations for a modern suspension bridge in Southwest Rwanda in collaboration with Bechtel's partner, Bridges to Prosperity
- Code incorporated factors such as terrain, existing paths, roads, landmarks, and resource efficiency to generate viable locations while considering distances, safety, efficiency, accessibility, and travel time for the community
- The options were then validated with my team taking a holistic approach while considering budget, flood risks, terrain, safety, accessibility, erosion, and sustainability. The bridge was eventually built in 2025, improving community access to schools, markets, and healthcare
Shadowing Engineer at ARM (2023-09 – 2023-09)
Explored ARM processor architectures and their applications in AI/ML accelerators
- Explored ARM processor architectures and their applications
- Shadowed an engineer working on dedicated AI/ML accelerators and optimisation
- Designed and programmed a "Bop It!" style interactive device using ARM Cortex-M architecture on an Arduino microcontroller in C++, receiving accelerometer data through custom circuitry integrated into a 3D printed casing
- Explored NPUs and TensorFlow Lite, evaluating model optimisation techniques such as clustering and pruning to improve performance on embedded systems