Philip Trenwith

Technical Lead - Staff Software Engineer @ Luno

Cape Town, Western Cape, South Africa

About

I have worked as a professional software engineer for 10+ years. I have outstanding problem solving skills and I understand the complexities of large systems after studying such systems briefly. I am passionate about software development and I take pride in developing effective and efficient solutions, adhering to best practices and software engineering principles like SOLID. During my career I have consistently been involved with high value projects critical to the business vision and mission. I have been in leadership positions with these projects and have been successful in my role. I have a quality mindset, continuously looking to improve and be more efficient in our processes and procedures. To become 100% more efficient is difficult to achieve when attempting to do 1 task 100% better, but easily achievable if you can do 100 tasks 1% better.

Experience

  • Luno (Full-time · 3 yrs 9 mos)
    • Staff Software Engineer
      Jul 2024 - Present · 2 yrs

    • Technical Lead
      Nov 2023 - Present · 2 yrs 8 mos

      Technical Lead in the liquidity services domain and point of contact for product and engineering management and competency leads.

    • Senior Software Engineer - Backend/Go
      Oct 2022 - Jul 2024 · 1 yr 10 mos

      At Luno I work as part of the liquidity services team, responsible for integrating with external exchanges and liquidity providers to manage the placing of orders and fulfilment of quotes to buy or sell cryptocurrencies. We are also responsible for recon, float management, deposits and withdrawals, settlements, and summary and revenue reports to name a few responsibilities. The tech-stack consists of the Go programming language, with an event-driven, microservice architecture relying on Protocol Buffers and gRPC for communication between services. Streaming events to services for handling. The services are hosted in Kubernetes clusters and further makes use of the AWS stack.

  • Porcupine Union (Full-time · 1 yr 11 mos)
    • Team Lead
      May 2022 - Sep 2022 · 5 mos

      While still looking after the technical aspects of the enterprise services at Porcupine Union, the team lead role is a line management role. While still having technical lead responsibilities, other responsibilities include roadmap and priority planning, delivering projects, looking after team members' career growth, and appointing new team members as needed.

    • Technical Lead
      Nov 2020 - Apr 2022 · 1 yr 6 mos

      Porcupine Union took on a project to expand the business of King Price Insurance into the European market under the Easy brand. To achieve this, we adapted our architecture to a layered approach, and hosted our systems in the cloud. I have been closely involved with the design and development of this layered architecture. To ensure our systems are maintainable and of high quality I adopted a test-driven-design approach where developed code is tested by solitary unit tests - testing the functionality of a method in isolation, sociable unit tests - testing a vertically sliced feature in a layer, and integration tests - testing a feature over all the layers. The REST API's developed to expose business functionality in this layered architecture is designed as .NET Core/.NET 6 Web API's using principles like SOLID and HATEOAS. The API's is split according to business domains, and hosted as Service Fabric applications. The code is stored in Azure DevOps repositories and deployed using Azure DevOps build and release pipelines. As Technical Lead it was my responsibility to build the pipelines required to deploy our API's, integrate with Service Fabric, run all required tests and setup branch and pull request policies and CI/CD triggers. Our API's are exposed through the Azure API Management gateway, I have gained extensive knowledge about APIM and optimized our SDLC by implementing steps on our release pipelines to automate the process of exposing API's on APIM and configuring the APIM API's accordingly. A new build of an API is deployed to APIM as a new revision of the API and automatically tested using a Postman test collection.

  • Technical Lead, Senior Integration Developer at King Price Insurance
    Nov 2019 - Sep 2022 · 2 yrs 11 mos

    When I joined King Price Insurance I was given the responsibility of developing a new self service portal where existing clients can manage their policies, log claims and get quotes for products offered by King Price. Throughout my time as Tech Lead of the team building this, I proved myself as a leader, as such the web team responsible for maintaining the King Price website was merged with my team. King Price Insurance follows the scrum methodology of software development, work items are vertical sliced to deliver smaller, tested work items, ready for production at the end of a 2-week sprint. The responsibilities of a tech lead involve the planning of the team backlog and team sprints, scheduling of team members and work items in each sprint as well as code-reviews of all pull requests across all teams. Integration development involves full-stack development, amongst other, the development, testing and documentation of API's integrating with all the building blocks of the insurance systems and databases.

  • GEW Technologies (6 yrs 4 mos)
    • Team Lead: Intelligence Suite
      Jan 2019 - Oct 2019 · 10 mos

      As team lead for the Intelligence Suite my responsibilities included coordination of team activities for the team consisting of developers, testers and a business analyst as well as coordinating with the product owner and senior management regarding roadmap planning, sprint planning, backlog management and progress on deliveries. Further responsibilities included system design and documentation, software development and developer testing as well as code reviews for features developed by team members to ensure coding standards are adhered, code is of high quality and the feature development are in line with the product plan.

    • Senior Software Product Developer
      Jan 2017 - Oct 2019 · 2 yrs 10 mos

      As a senior software developer at GEW Technologies I am a full-stack developer in the Java technology stack, for the Electronic Warfare domain. I have developed end-user applications in Java 6, 7, 8 and 11. Both Swing and JavaFX applications. One of the programs I have developed at GEW is a proprietary ETL tool used for data fusion to accommodate the analysis of data from various sources.

    • DevOps Expert Group
      Mar 2018 - Dec 2018 · 10 mos

      In a collaboration attempt by some of the developers at GEW I formed part of a team taking on DevOps responsibilities within the software development department of GEW Technologies. This team of developers focused primarily on the adoption of technologies to support the SDLC. The DevOps process included the adoption of technologies such as Maven, Git, Jenkins and others with proprietary legacy systems with the goal of improving the efficiency of the SDLC to gain developer productivity.

  • Digital Passport Token at OST "Simple Token"​
    Apr 2018 - May 2018 · 2 mos

    Out of interest in the field I participated in the OST Kit Alpha Phase II: Proof of concept developer challenge. I developed a Proof of Concept application integrating with the OST API to demonstrate that the blockchain can be used to track the history of files shared between users in the cloud