Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Foster a supportive community that prioritizes growth, learning, and communication

  2. Maintain high-quality and reliable applications

  3. Constant reflection and learning from our software projects and club processes

  4. Deliver innovative and useful features to our clients

...

  • FinishLine by NER (Web)

    • AKA PM Dashboard v3

    • React frontend, Express backend, Yarn workspace in Typescript

    • Project Management dashboard Dashboard with goals to expand to finances in the Fall

  • PM Dashboard v2 (Web, Deprecated on August 15th, 2022)

    • Built-in TypeScript, React, and serverless beginning January 2021 and launched in April , 2022, 24 weekly users

    • Interactive UI for viewing, filtering, reviewing, and implementing Change Requests, Projects, and Work Packages

    • Intended expansion to financial and logistical management features

  • PM Dashboard v1 (Web, Deprecated on April 30, 2021)

    • Built-in Google Apps Scripts in July 2021, 24 weekly users

    • JS/TS-enhanced HTML-based UI with minor interactive features built on top of the Project Management Database Google Spreadsheet

  • PM Dashboard v0 (Web, Deprecated on March 14, 2020)

    • Built-in Google Apps Scripts in November 2020, 6 weekly users

    • Email automation scripting to summarize projects behind schedule

  • Future Application Ideas

    • Mobile interfaces for PM Dashboard

    • Engineering club management software

    • Engineering lab/machine shop management software

    • Northeastern club management Club Management software

Roles and Responsibilities

...

  • Understand the full architecture of Finishline and be able to explain it (e.g. in an interview)

  • Learn how to be an independent developer (debug, answer your own questions, use google)

  • Get comfortable using the technologies used in our app (React, Express, Prisma, Typescript, Git)

...

  • Attend weekly Software Solutions meeting (mandatory)

  • Attend weekly Software Leads meeting (mandatory)

  • Mentor their assigned developers and be able to walk through problems with them

  • Check-in with developers at least once a week via Slack

  • Complete advanced coding tasks

  • Review Participates in at least two tickets per Release (either completely doing or completing stale developer work)

  • Review and manage (make sure they’re not blocked or waiting for another review) respective groups' PRs

  • Responsible for making sure members' work doesn’t get held up too long

    • If a high-priority ticket is stale for more than 2-3 weeks, the lead should either do the ticket themselves or ensure that it gets done by a reliable member

...

Software Product Manager – (5 hrs/week):

Reports to: Head of Product ManagementLeads

Responsibilities:

  • Attend weekly product meetings (mandatory)

  • Slacking Slack and communicating communicate with engineers and developers

  • Making epics

  • Designing regularly about new features or feature requests (at least once a week)

  • Make Epics

  • Design new featuresConducting

    • Follows Figma Style Guide

  • Conduct Design Reviews for their new features

  • Must come to at least one engineering bay time per week

  • Attend Product Learning Sessions

Goals:

  • Learn as much about the applications that we make and about the structure of the club as a whole as you can (A good way to get very involved in the club quickly)

  • Learn how to communicate with Engineers and Developers

    • Understand

    and advocate for the users, their needs, and resolving pain points
  • Conduct user interviews to understand user behaviors and needs

  • Write user stories, flesh out tickets, and provide user insight on tickets

  • Track the application's features and build the application roadmap

...

    • and act upon criticisms of your designs or epics

  • Learn Figma

  • Learn how to write user stories and an epic for new features

  • Learn how to collaborate with a team of product managers to create larger features

Software Product Lead – (7-10 hrs/week):

Reports to: Head of Product Management

Responsibilities:

  • Attend and facilitate weekly product meetings

  • Attend Software Meetings

  • Attend at least one engineering bay time a week

  • Create Tasks for Product Managers (in Finishline)

  • Ensure that new features are delivered on time, according to preset deadlines

  • Create Product Roadmap with Head of Product Management and Head of Finishline

  • Attend all Product Design Reviews

  • Moderate #software-product-requests (respond to and properly triage inquiries)

  • Create and analyze Product Feedback Form for any new features

  • Enforces Style Guide on member designs

    • Ensure the Figma file stays organized and easy to read/ work in

Goals:

  • Learn how to communicate and build connections with Engineering Leadership

  • Learn how to manage the creation and delivery of large new features

    • Delegate smaller design/ work to newer members

  • Be able to identify pain points and proactively come up with solutions

Head of Product Management — (10-15 hrs/wk)

...

Reports to: Head of Software Solutions

...

Responsible for overseeing the overall vision and direction of Software Solutions products

Chief Software Engineer

Responsibilities:

  • Attends all product meetings

  • Attends all software meetings

  • Attends all embedded software meetings

  • Attends all head meetings

  • Attends all lead meetings

  • Attends all Design Reviews

  • Presents (or ensures that another reliable person is leading) all product learning sessions

  • Approves Epics

  • Approves Designs (should screen designs before design reviews with a larger group)

  • Work closely with club leadership (spends time in the bay, in constant communication with them)

  • Understands all features of all applications and should be able to explain why they exist

  • Creates a Product Roadmap for each semester

  • Ensures that all product deadlines (set in collaboration with other software heads) are being met

  • Ensures that users are properly educated about the rollout of new features

  • Manage Finishline projects for the Product Team

Goals:

  • Be able to sell our applications (Finishline, Telemetry System) to users, engineering leadership, developers, and outside parties

  • Gain the ability to foster a sense of community in the product team to maintain retention

  • Communicate software product roadmaps at least quarterly to club leadership

  • Ensure user pain points are documented, prioritized, and addressed appropriately

  • Properly delegate work to product leads and managers

Head of

...

Finishline – (10-15 hours per week):

Reports to: Chief Software Engineer

Responsibilities:

  • Leads all Finishline meetings

    • With assistance from the Chief Software Engineer as needed

  • Leads all Finishline tech lead meetings

  • Presents (or ensures someone reliable is presenting) all Finishline learning sessions

  • Attends all Product Meetings

  • Attends all Head Meetings

  • Attends all Leads Meetings

  • Attends all Design Reviews (related to Finishline)

  • Final Reviewer and Approver of all Finishline-related PRs

    • The Chief Software Engineer will assist with this, but it’s the head's responsibility to ask the chief for help as needed

  • Breaks out epics (or delegates to a tech lead)

  • Ensure that deadlines are being met for releases

    • check-in with tech leads weekly on their progress on tickets

    • manage their tech lead group of returning members (with stricter deadlines)

    • ping people with high-priority tickets to make sure they get done by the time they’re due

      • If a developer can’t complete release work on time, it’s the head's responsibility to finish it themselves or ensure that a tech lead or reliable member of their group completes it in time

    • Work with the Product team to ensure that release deadlines are reasonable and we are on track to meet them

  • Ensure that developers have good, varied work to do

  • Manage Finishline projects for the Finishline Team

Goals:

  • Learn how to effectively manage a 50+ developer team

  • Learn how to deploy the app on AWS (optional)

  • Deliver a good product (Finishline) that they can be proud of and talk about leading the development of

  • Have a complete understanding of the codebase and or tech stack

  • Be able to answer any question about Finsihline that could be asked

  • Learn how to research new technologies for new architecture or features

Head of Application Software – (10-15 hours per week):

Reports to: Chief Software Engineer

Responsibilities: Chief Business Officer

...

Pitching the group 

...

Maintaining relationship with Khoury 

...

Overall management strategy of the team

...

  • Leads all Application Software Meetings

  • Presents all application software learning sessions

  • Attends all D&C meetings

  • Attends all Product meetings

  • Attends all Design Reviews (related to application software)

  • Attends all head meetings

  • Attends all lead meetings

  • Attends all software social events

  • Ensures that NERO and Telemetry Systems are being completed according to deadlines

  • Creates Application Software Roadmap with Head of Product and Chief Software Engineer

  • Communicate regularly with the head of D&C (to be changed to the head of firmware)

  • Breaks out product epics and ensures that members have work to do

  • Manage Finishline projects for the Application Software Team

  • Initial vetter of new applicants for the application software team

    • Makes technical questions for the application software team/ conducts any interviews of new applicants

  • Final reviewer/ approver of all application software PRs (it's their responsibility to get the chief software engineer involved as needed)

  • Drafting architecture for respective projects under Application Software

  • Removing any non-contributing members from the team to ensure good team moral steady progress on deliverables

Goals:

  • Learn how the car works

  • Fully understand the tech stack for all Application Software Projects

  • Gain the ability to foster a sense of community in the Application Software team to maintain retention

  • Learn how to research new technologies for new architecture or features

  • Learn how to delegate work to avoid burnout and ensure deadlines are being met

Chief Software Engineer– (15-20 hours per week):

Reports to: President of the Club/ EBoard

Responsibilities:

  • Attends all software meetings:

    • Weekly Finishline Meetings

    • Weekly Product Meetings

    • Weekly Application Software Meetings

    • All Design Reviews

    • All Learning Sessions

    • Leads biweekly software meetings and social events

  • Attends all EBoard meetings

  • Attends all head meetings

  • Attends all lead meetings

  • Attends all Kaleidoscope Meetings

  • Creates Finishline Product Roadmap with head of product and head of Finishline

  • Creates Application Software Product Roadmap with head of product and head of Application Software

  • Creates Finishline Development Roadmap with head of product and head of Finishline

  • Creates Application Software Development Roadmap with head of product and head of Application Software

  • Final decision maker for all software-related decisions

  • Represents the software team to outside groups whenever necessary

  • Understand the design, product, and implementation (tech stack) of all applications

  • Assists all heads when asked (should pick up any slack in all parts of the software team)

  • Ensures all meeting times are scheduled (with a room) with EBoard without conflicts between teams and heads' responsibilities

    • Ensures that all meetings are running as intended and with all the support that they need

  • Creates learning sessions with the heads who will be presenting them in a timely manner

  • Ensures that heads are meeting their responsibilities and fostering a good environment for members

  • Plans and facilitates all social events (buys food)

  • Deploys all applications as needed

  • Have all the logins and recurring subscriptions (AWS login, AWS bill, NER gmail, domain for Finishline, Figma, Netlify, all ENV variables)

  • Advocates for software members/leads and works on creating benefits for software members and leads (employment engagement opportunities, events with other clubs)

  • Communicate with club leadership to ensure the software team is properly supporting the rest of the team and contributing to car development

  • Manage any interpersonal conflicts that come up on the software team

  • Ensure that the team has effective heads currently and is developing more talent to lead the team in the future

Goals:

  • Collaborate with the heads of each team to ensure a good learning environment is created on the software team and people have a variety of opportunities to learn and improve their skills

  • Learn how to manage several projects and collaborate with teams of engineers

  • Make a set of products that they can be proud of/ discuss with other students or employers

  • Increase retention and decrease burnout of people in heads/ leads roles

Goals

Universal Goals

Goals for every semester

...