Working on DallasByMetro
This website emerges from a group endeavor: a collaborative portfolio project with my talented colleagues. Our shared goal is to aid public transit riders by enabling them to find easily accessible destinations through an intelligent filtering system. Our choice of technologies includes React, Java Spring Boot, and Postgres.
My role within this project has been multifaceted and instrumental. One of my primary responsibilities was the design and implementation of the data model. Aiming for efficiency and scalability, I established a well-structured Postgres database schema, serving as the foundation for storing the vital information the application requires.
I've placed a heavy emphasis on security, implementing rigorous measures to protect user data and maintain the system's integrity. Using my knowledge of Spring Security, an advanced framework offering authentication and authorization capabilities, I've helped ensure that only authorized users can access the app and its features.
Reliability is key for any software application, which is why I used this experience to further my skills with software development testing. Utilizing tools like JUnit, AssertJ, and Mockito, I've developed integration tests and mock dependencies. These tests support the early identification and resolution of potential issues.
In my pursuit of high-quality software, I've established a Continuous Integration and Continuous Deployment (CI/CD) pipeline for the project. I've automated the build, testing, and deployment processes by configuring GitHub workflows. This setup ensures rigorous testing and smooth deployment of any changes made to the codebase.
To host our application, I've chosen the scalability and convenience of Amazon Web Services (AWS). My use of AWS services extends to deploying and managing our virtual server instances with EC2, managing our Postgres database with RDS, and setting up VPC configurations for network isolation and security. Additional measures include AWS Security Groups for controlling traffic, Route 53 for DNS management, and Certificate Manager for SSL/TLS certificate management.
Lastly, but importantly, I've contributed to the design and implementation of the project's API. Using RESTful architecture, establishing clear communication endpoints, and coordinating seamless interaction between the backend and frontend, I've ensured a smooth and user-friendly experience for our application users.
Throughout the project, my team and I have adhered to industry best practices, fostered clear communication, and upheld an agile approach, enabling us to consistently move toward our objectives. As a result, we've created a professional and polished web application backend, a testament to our collective skills and abilities.