Timothy Putra Prasetio's Project Portfolio Page

Project: LetsGetHired

LetsGetHired is a desktop application designed to assist you in efficiently tracking and managing your internship applications and their progress.

In addition to these capabilities, we recognize the importance of speed and efficiency. Thus, LetsGetHired is optimized for use via a Command Line Interface (CLI), but you still enjoy the advantages of a Graphical User Interface (GUI). If you are a swift typist, LetsGetHired can streamline your internship tracking faster than many standard GUI-based tools available.

Given below are my contributions to the project.

  • New feature

    • Added the Deadline field. ( see #80)
      • What it does: Allows users to specify the internship application deadline or any other crucial dates.
      • Justification: It is important for users to know the deadline of their internship applications.
      • Highlights: The Deadline field is a new field that was not present in the original project.
  • Enhancements to existing feature

    • Updated the Deadline and Status field to be optional. ( see #83)
      • What it does: Allows users to add a new internship application faster (without all the fields).
      • Justification: Some internship applications may not have a deadline or status (yet).
      • Highlights: The Deadline and Status field are now optional fields. If not specified, they will take the default value of No Deadline and Pending respectively.
  • Code contributed: * This RepoSense link summarizes my contributions to the codebase.

  • Project management

    • In overall project management, I contributed in the following areas:
      1. Meeting Organization: I initiated and led weekly team meetings, ensuring effective communication and alignment of project goals. By utilizing tools like Zoom and Google Docs, I fostered a collaborative environment that encouraged team engagement and brainstorming.
      2. Deadline Management and Tracking: I was responsible for tracking project deadlines, employing tools like GitHub issues for task management. I also ensured that the team was on track to meet the project milestones and deadlines.
      3. Innovation and Feature Enhancement: I actively proposed new features and improvements, such as ideas on how the UI should look like. My suggestions were always grounded to the pain points of our application's target audience, demonstrating a commitment to continual improvement.
      4. GitHub Repository Management: I efficiently managed issue tracking, pull requests, and version control. This role was crucial in maintaining code quality and ensuring that all team members' contributions were effectively integrated into the project.
  • Testing

    • In terms of testing, I contributed in the following ways
      1. Updating Test Data: Recognizing the importance of relevant test data, I took the initiative to update all sample data sets. This involved tailoring the data to closely match real-world scenarios applicable to our application, thereby enhancing the accuracy and relevance of our testing processes. ( see #115)
      2. Comprehensive Feature Testing: With each new feature developed, I ensured that comprehensive testing was conducted. This included reviewing test cases that covered a wide range of scenarios, from typical usage to edge cases. My approach ensured that each feature was robust and performed as intended in diverse situations. ( see #108 by Aprup Kale)
  • Documentation:

    • User Guide (see our User Guide)
      1. User-Focused Redesign of the User Guide: I undertook a comprehensive overhaul of the existing UG, transforming it into a more user-centric document. This involved reorganizing content, simplifying technical jargon, and ensuring that the guide was accessible to users with varying levels of technical expertise.
      2. Inclusion of Annotated UI Images: To enhance clarity and ease of use, I included annotated images of the application's user interface (UI) in the guide. These visual aids were instrumental in helping users understand the functionality and navigation of the application more intuitively.
      3. Utilization of MarkBind Components: By incorporating MarkBind components, such as boxes and tabs, I improved the presentation and retention of information in the guide. These elements made the UG more interactive and engaging, facilitating a better learning experience for the users.
      4. Enhanced Introduction and Getting Started Section: I crafted an inviting and informative introduction and getting started section, ensuring that new users could quickly familiarize themselves with the application. This section set the tone for the rest of the guide, providing a clear and concise overview of what to expect.
      5. Continuous Updates and Improvements: Throughout the project lifecycle, I diligently updated each section of the UG to reflect the latest features and changes in the application. This ensured that the documentation remained accurate and relevant at all times.
      6. Relevant PRs: #88, #100, #113, #162
    • Developer Guide: (see our Developer Guide)
      1. Comprehensive Explanation of the add command: I provided a detailed explanation of the 'Add Command' feature, covering its purpose, functionality, and implementation. This included a step-by-step guide on how the command processes input, interacts with other components, and produces the desired outcome.
      2. Planned Enhancements: I proposed several enhancements to the application, including:
        • Improved Command Error Feedback
        • Improved Unknown Command Error Feedback
        • Improved Visibility of Newly Added Internship Applications
      3. Relevant PRs: #99, #202
  • Community: