SaaS Multi-Channel Banking API Platform
NCR Corporation (now NCR Voyix) — 2020-2022
Technologies Used
Docker and Kubernetes
GCP
REST and SOAP APIs
YAML
Postman
Spring Cloud Contract
Swagger/OpenAPI
Wiremock
Java
JUnit
Jenkins
Major Accomplishments
Took initiative to create a standardized Postman collection to help everyone with testing
Coordinated with another development team to fix issues they had with our mock API
I developed REST microservices with Docker and Kubernetes to integrate external vendor bank core APIs into our SaaS banking platform in Google Cloud Platform (GCP). My primary tasks involved coding business logic for financial transactions, writing integration tests, and reading API documentation.
This job was my first professional development role, so I learned several skills they don’t teach you in school.
- How to code in a team (version control, pull requests, asking for help)
- Scrum/Agile practices
- Soliciting appropriate requirements for stories
- CI/CD pipelines
- Docker and Kubernetes (they might teach this now)
- Mentoring interns
Unfortunately, I did not acquire much Java and Spring experience because we wrote code in a domain specific language using YAML. I did, however, dip my hands into several other skills.
I spent a lot of time working with GCP, Jenkins, Docker, and Kubernetes. GCP is where I viewed microservice logs and located docker images. In Jenkins I made sure my merged code passed all the tests, and I also used pipelines developed by SRE to deploy new Kubernetes namespaces. As for Docker and Kubernetes, I obviously worked with those daily since we built microservices using those platforms.
I also wrote tests like there was no tomorrow. I programmed unit tests with JUnit, performed integration testing with Spring Cloud Contract, and even contributed a few end-to-end tests using Cucumber/Gherkin. I also made a Postman collection for local testing.