Skip to main content

Tech Lead/Developer Challenge

Tech Lead/Developer Challenge

Overview

The aim of thisThis challenge is accuratelydesigned representto provide an accurate representation of the day to day-to-day challenges afaced developerby developers at Blueprint faces.Blueprint. We willaim testto assess your software engineering skillsskills, problem-solving abilities, and how welleffectively you can you contribute into a high high-performance software team. Developing withsoftware collaboratively presents unique challenges, such as maintaining a groupconsistent codebase and ensuring seamless integration of developerschanges poseswhen challenges like how do we maintain our codebase consistency? If twomultiple developers are workingwork on similar features,features. This challenge will evaluate how canwell weyou makenavigate surethese theirchallenges changeswhile areadhering integratedto seamlessly?best practices in software development.

As you may know, when developingModern software applications thereare istypically divided into a front-endfrontend and back-end.a Yourbackend. task inIn this challengechallenge, isyou towill contribute to a project the Tech Team has been workingactively ondeveloping forover the past year. Our tech stack isconsists of:

  • Frontend: React
  • (frontend),
  • Backend: SprintSpring Boot + PostgresPostgreSQL
  • (backend).

You will be expected to work within this stack and follow industry best practices for software development.

Blueprint Admin

As Blueprint growscontinues into size,grow, so does our needsneed for efficient resource management. The Blueprint Admin platform aims to betterprovide managea ourcomprehensive resources increase. The main goaloverview of the Blueprintorganization's Admincurrent isstate. toThrough getthis adashboard, detailedthe descriptionExecutive Board (E-board) and Tech Leads will be able to:

  • Create and manage events
  • Oversee AWS resources
  • Track attendance
  • Manage the organization's budget

Challenge

You must choose one of the currentissues statelisted below and implement a solution.

Frontend Issues (Repository)

Backend Issues (Repository)


How to Contribute

Follow these steps to fork the repository, make changes, and submit a Pull Request (PR).

Fork the Repository

  1. Navigate to the repository you want to contribute to:
  2. Click on the "Fork" button in the top-right corner.
  3. This creates a copy of the organization.repository in your GitHub account.

Clone the Forked Repository

After forking, clone the repository to your local machine:

git clone https://github.com/stevensblueprint/blueprint_admin.git

or for backend:

git clone https://github.com/stevensblueprint/blueprint_admin_backend.git

Set Up the Development Environment

Frontend

  1. Install dependencies:
    npm install
  2. Start the development server:

    npm start

Backend

  1. Install dependencies using Maven:
    mvn install
  2. Run the application:

    mvn spring-boot:run

Create a New Branch

Before making changes, create a new branch:

git checkout -b fix-issue-XX

Replace XX with the issue number.

Implement Your Solution

  • Carefully read the issue description and implement the required feature or fix.
  • Follow the existing code style and conventions.
  • Write tests where applicable.

Commit Your Changes

After making your changes, commit them:

git add .

Push your branch to GitHub:

git push origin fix-issue-XX

Submit a Pull Request

  1. Go to the original repository (Blueprint Admin or Backend).
  2. Click "Compare & pull request".
  3. Provide a clear PR description:
    • Reference the issue number.
    • Describe your changes.
    • Mention any tests you wrote.
  4. Click "Create pull request".

Submission Checklist

  • Forked the repository
  • Cloned the repository
  • Set up the development environment
  • Created a new branch
  • Implemented the fix/feature
  • Committed and pushed changes
  • Submitted a pull request