-
Notifications
You must be signed in to change notification settings - Fork 4
Hasan Baki Küçükçakıroğlu ‐ Milestone 1
Member: Hasan Baki Küçükçakıroğlu - Backend Team
Responsibilities:
As a key member of the backend team for our project, I have been entrusted with an array of critical responsibilities, primarily revolving around the development and maintenance of backend services and database design. My expertise has been crucial in revising and enhancing requirement specifications and diagrams to ensure alignment with project objectives. A significant portion of my role involves deployment tasks, ranging from domain reservation to orchestrating docker instances, underlining my versatile skill set in the deployment pipeline. My hands-on approach and technical knowledge have been instrumental in setting up the backend infrastructure using Spring, which forms the backbone of our user service and authentication mechanisms. Moreover, I have taken the lead in establishing a robust exception handling framework and creating a seamless authentication flow, including features like email verification and password reset functionalities. I have also played a pivotal role in integrating the backend with the front-end components, ensuring that the entire system functions cohesively. Additionally, my responsibilities extend to the administrative aspect of the project, including milestone creation, release management, and the vital task of documenting and reporting our progress through structured communication and milestone reports.
Main Contributions:
-
Revised Requirement Specifications: Spearheaded the review process to align project objectives with current and future needs, resulting in a more efficient development roadmap. (Issue #192)
-
Updated Class Diagrams: Enhanced and refined class diagrams to accurately represent our system architecture, facilitating a clearer understanding of project structure. (Issue #195)
-
Decided Backend Technologies: Made strategic decisions on the technology stack for the backend, setting a solid foundation for development and future scalability. (Issue #202)
-
Drafted Project Plan: Authored the initial project plan draft, outlining the key phases and timelines, ensuring project milestones are met efficiently. (Issue #206)
-
Initialized Backend with Spring: Set up the initial Spring project, establishing a robust and scalable backend framework. (Issue #207)
-
Implemented User Service and Authentication: Developed comprehensive user services and a secure authentication system, pivotal for user management. (Issue #226)
-
Developed Post Model: Crafted the first version of the Post model, an essential feature for the application's content management system. (Issue #231)
-
Global Exception Handling: Instituted a global exception handling mechanism to streamline error management across the application. (Issue #246)
-
Structured Repository and User Classes: Constructed the repository structure and implemented user-related classes, forming the core of our backend logic. (Issue #248)
-
Authentication Endpoints: Delivered key authentication endpoints, including login, registration, and password recovery, enhancing the security and user experience. (Issue #256, Issue #257, Issue #258)
-
Backend Deployment: Orchestrated the deployment of the backend, ensuring the application's availability and reliability. (Issue #269)
-
Email Verification for Registration: Integrated an email verification process for user registration, adding an extra layer of security. (Issue #280)
-
Release Management and Milestones: Successfully managed new releases and created milestone documentation to track progress and maintain project momentum. (Issue #286, Issue #307)
-
Password Reset Endpoint: Implemented the password reset endpoint, an important feature for user account management. (Issue #288)
-
Frontend and Backend Integration: Connected the forget password flow to the backend among other frontend fixes, ensuring a seamless user experience. (Issue #290)
-
Full Stack Integration and Deployment: Played a critical role in the integration of different application parts and managed the deployment of the entire stack. (Issue #301)
-
Digital Asset Links Configuration: Configured the web server to serve the
assetlinks.json
file, which is necessary for digital asset verification. (Issue #302) -
Communication Plan Update: Updated the communication plan to ensure effective collaboration and information sharing within the team. (Issue #310)
-
Individual Contribution Report: Compiled and documented the individual contribution report, detailing personal input and impact on the project. (Issue #315)
-
Customer Milestone Report: Created comprehensive reports for customer milestones to showcase project achievements and adherence to requirements. (Issue #322)
Code-related significant issues.
-
Initialize Backend Spring Project: This involves setting up the initial codebase for the backend services using the Spring framework, which includes configuring the necessary dependencies, establishing the project structure, and setting the groundwork for further backend development tasks. (Issue #207)
-
Backend - Add User Service and Authentication: Involves writing the backend code for managing user services, such as creating, updating, and retrieving user information, and implementing the authentication logic to handle user logins securely. (Issue #226)
-
Backend - Develop the First Version of the Post Model: This task is about coding the data model for posts in the system, including attributes, relationships, and the necessary database integration. (Issue #231)
-
Backend- Global Exception Handler Mechanism: Developing a mechanism in the backend to handle exceptions globally, which helps to reduce repetitive code and centralizes error handling logic. (Issue #246)
-
Initialize Repository Structure and Implement User Related Classes: Setting up the code structure for repositories which are used in Spring to abstract the data layer, and writing the classes related to user management that interact with these repositories. (Issue #248)
-
Backend - /auth/login: Coding the login endpoint, which involves checking user credentials and providing authentication tokens or sessions as appropriate. (Issue #256)
-
Backend - /auth/register: Writing the registration endpoint code, which includes user creation in the database and potentially sending verification emails. (Issue #257)
-
Backend - /auth/forgot-password: Implementing the forgot-password feature, which typically involves generating a password reset token, sending it to the user's email, and validating it upon password reset. (Issue #258)
-
Backend: Email Verification for User Registration: Adding the functionality for verifying user email addresses during the registration process through sending and checking verification codes. (Issue #280)
-
Backend - Implementation of /auth/reset-password Endpoint for Password Renewal: Developing the endpoint to allow users to change their password once they have a valid reset token, ensuring the security of user accounts. (Issue #288)
-
Web - Connect forget password flow to backend: Linking the frontend forget password flow to the backend endpoints, ensuring the functionality is available to the user through the front-end interface. (Issue #290)
-
Integrate parts of the application and deploy all: This task involves writing scripts and configurations for integrating various parts of the application, as well as setting up the deployment. (Issue #301)
-
add assetlinks.json file and configure web server to serve it: Involves creating the
assetlinks.json
file, which is part of app verification, and configuring the server-side code to serve this file correctly. (Issue #302)
Management-related significant issues.
-
Revising Requirement Specifications: This entails managing the scope of the project by reviewing and updating the requirements to ensure they are up-to-date and accurately reflect the project needs and goals. (Issue #192)
-
Revising Class Diagrams: Involves managing the project's technical documentation by updating class diagrams to ensure they represent the current state of the application's architecture. (Issue #195)
-
Deciding on Technologies for Backend: This is a decision-making role that involves evaluating and selecting the appropriate technologies to be used for the backend development, impacting the project's technical direction. (Issue #202)
-
Project Plan First Draft: Creating the first draft of the project plan requires management skills to outline tasks, timelines, and milestones, coordinating with the project's objectives and deadlines. (Issue #206)
-
Create Milestone-1: Involves managing the project timeline by defining and documenting the first milestone, tracking the progress, and ensuring the project is on schedule. (Issue #286)
-
Create new release: This task is related to release management, ensuring that the new version of the software is properly packaged, documented, and ready for deployment. (Issue #307)
-
Update Communication Plan: Managing the project's communication strategy, ensuring that all team members are on the same page and that there's a clear record of communication policies and channels. (Issue #310)
-
Create Individual Contribution Report: Involves compiling and documenting individual contributions, which is a crucial part of project management, ensuring that all team members' work is recognized and accounted for. (Issue #315)
-
Create Customer Milestone Report: Managing client relations by documenting and reporting on project milestones, keeping the customer informed of progress and any changes to the project plan. (Issue #322)
Pull requests.
We haven't have any conflict issue since we divided tasks into small independent tasks. PR names and commits are self expilanatory.
Author
Reviewer
Additional information.
This was a useful milstone for me. Even if we had some difficulties during our presentations, we did a good job as a group.
🗄️ Project
Milestones
👤 Individual Contribution Reports
Milestone 1
- Bahadır Gezer - Milestone 1
- Bahri Alabey - Milestone 1
- Begüm Yivli - Milestone 1
- Egemen Kaplan - Milestone 1
- Enes Yıldız - Milestone 1
- Hasan Baki Küçükçakıroğlu - Milestone 1
- İbrahim Furkan Özçelik - Milestone 1
- Meriç Keskin - Milestone 1
- Miraç Öztürk - Milestone 1
- Sude Konyalıoğlu - Milestone 1
- Ömer Faruk Çelik - Milestone 1
Milestone 2
- Bahadır Gezer - Milestone 2
- Bahri Alabey - Milestone 2
- Begüm Yivli - Milestone 2
- Egemen Kaplan - Milestone 2
- Enes Yıldız - Milestone 2
- Hasan Baki Küçükçakıroğlu - Milestone 2
- İbrahim Furkan Özçelik - Milestone 2
- Meriç Keskin - Milestone 2
- Miraç Öztürk - Milestone 2
- Sude Konyalıoğlu - Milestone 2
- Ömer Faruk Çelik - Milestone 2
Final Milestone
- Bahadır Gezer - Final Milestone
- Bahri Alabey - Final Milestone
- Begüm Yivli - Final Milestone
- Egemen Kaplan - Final Milestone
- Enes Yıldız - Final Milestone
- Hasan Baki Küçükçakıroğlu - Final Milestone
- İbrahim Furkan Özçelik - Final Milestone
- Meriç Keskin - Final Milestone
- Sude Konyalıoğlu - Final Milestone
- Ömer Faruk Çelik - Final Milestone
🖇️ Lab Reports
📑 Templates
👥 Team Members
CmpE 352
Old Project Files
📅 Meetings
🔬 Researches
👤 Individual Contribution Reports
- Bahri Alabey - Milestone 1
- Bahri Alabey - Milestone 2
- Ömer Faruk Çelik - Milestone 1
- Ömer Faruk Çelik - Milestone 2
- Bahadır Gezer - Milestone 1
- Bahadır Gezer - Milestone 2
- Egemen Kaplan - Milestone 1
- Egemen Kaplan - Milsetone 2
- Meriç Keskin - Milestone 1
- Meriç Keskin - Milestone 2
- Orkun Kılıç - M1
- Orkun Kılıç - M2
- Sude Konyalıoğlu Milestone 1
- Sude Konyalıoğlu Milestone 2
- Hasan Baki Küçükçakıroğlu Milestone 1
- Hasan Baki Küçükçakıroğlu Milestone 2
- Ibrahim Furkan Özçelik Milestone 1
- Ibrahim Furkan Özçelik Milestone 2
- Miraç Öztürk
- Enes Yıldız Milestone 1
- Enes Yıldız Milestone 2
- Begüm Yivli M1
- Begüm Yivli M2