BMW IT Hub South AfricaJava Full Stack Developer
Jan. 2023 - Mar. 2025South Africa● Design, develop and deploy distributed services
● Design, deploy and maintain CI/CD pipelines (GitHub Actions)
● Design, develop and deploy Infrastructure as code solutions using Terraform and AWS services (CDK, SDK...)
● Use JProfiler to analyze code performance and implement improvements considering Big O notation measurements and other framework standards. Project – Program Planning Volumes and Stocks
PRMG
This is a multimodule application separated in different layers (data, messaging, etc.), which also follows the microservice architecture to get data about vehicles from supporting services. To name a few:
Master data Services – multiple spring boot microservices.
Geostructure – data about countries and types of vehicles.
Sales channel – data about sales channels. Retail, Private, Wholesale, etc.
Process – Reference point tracker, tracks at which stage is the vehicles, until it is sold
Volume Service – Data about how many volumes of vehicles are being produced and also what’s in stock. PRMG – leverages all supporting microservices and builds hierarchical structures with the provided data and uses Angular to create the view for the user. It uses a variety of design patterns together, Predominantly Factory for creating classes, Composition for Tree structured data, Singleton for database connections, Builders for large args size and easily customize objects. Scenario Manager which deals with creating and updating scenarios for testing and bug fixing.
A normal day consists of solving either a defect or working with a user story. Analyzing the problem at hand and write Java code using best practices in a TDD manner. Evaluate existing code to find improvement, in either performance, security, etc. Use JProfiler to monitor the performance to identify areas of improvements with the help of b bigO and making sure that code that iterates through objects, proper Data Structures are used to make the code more efficient.