BCSDLab - 다양한 고찰

주노·2023년 11월 16일
6

BCSDLab

목록 보기
1/5
post-thumbnail

서론

우아한테크코스 5기를 수료하며 학교에 돌아가게 되었다.

우아한테크코스에서 학습한 내용을 교내 동아리 구성원들에게 전파 할 수 있는 좋은 기회라고 여겨져 이에 대한 계획을 세우고자 한다.

하지만 계획을 세우기에 앞서 현재 동아리 운영 현황을 파악할 필요가 있다.

현재 백엔드 트랙의 교육과정을 살펴보자.

BCSDLab?

BCSD LAB은 현직 IT 실무에서 활동하는 멘토와 함께 프로젝트를 하는 스타트업형 프로세스 동아리다.

한국기술교육대학교 교내 동아리(연합동아리 아님)로 UI/UX, FrontEnd, BackEnd, Android, IOS, Game 트랙이 존재한다.

동아리 홈페이지: https://bcsdlab.com/

현재 지속적으로 운영중인 서비스로는 한기대 커뮤니티 서비스 KOIN 프로젝트가 있다.

서비스 홈페이지: https://koreatech.in/

교육과정

현재 동아리 구성원은 Beginner (교육생) > Regular (정규인원) > Mentor (멘토)로 구성되어있다.

Beginner 교육생들은 6개월간 커리큘럼에 따라 교육을 받고 회고를 통해 Regular로의 전환을 결정하는 프로세스로 모집과정이 진행되고있다.

BCSDLab은 동아리 내 지식의 선순환을 장려하기 때문에 Regular로 전환된 인원에게 교육 담당을 맡기는 구조로 순환하고있다.

이로 인해 교육자가 바로 직전에 받았던 교육으로부터 느꼈던 교육의 불편함을 직접 개선할 수 있다는 장점이 있다.

문제 인식

백엔드 트랙은 내부 사정으로 인해 지난 기수 백엔드 트랙 인원 모집을 받지 않았다. 내부적으로 인원 변동도 있어 교육 프로세스를 재정립했으나 몇가지 문제점이 존재했다.

나 또한 2020년 교육자로서 커리큘럼을 정립하고 수행했을 때가 있었다.
하지만 그 당시에는 학교 내부에서만 동아리를 바라보는 우물 안 개구리였기 때문에 문제점으로 인지하기 어려웠던 부분이 존재했었다.

우아한테크코스를 진행하면서 1년간 동아리 교육자로서가 아닌 외부의 관점으로 교육 커리큘럼을 바라봤을 때 발견한 문제점들은 다음과 같다.

레거시 프로젝트

현재 동아리에서 지속적으로 운영중인 KOIN API를 구동하는 과정에서 다음과 같은 기술들이 사용되고있다.

  • SpringFramework 3 (SpringBoot 아님)
  • Maven
  • Mybatis
  • MySQL 5.7
  • Redis
  • MongoDB
  • Go
  • Python
  • 등등..

이러한 환경을 고려하여 주요 학습 목표인 Spring 교육을 수행할 때 Spring 3를 교육하는 커리큘럼을 이어왔다.

하지만 6개월의 기간 중 Spring 교육기간이 4주정도 밖에 안된다.

참고: https://bcsdlab.com/track/backend

학업을 때려치고 동아리 활동에만 몰두한다 해도 이 짧은 기간동안 Spring 3을 활용할 정도로 교육한다는 커리큘럼 부터가 뭔가.. 이상하다. SpringBoot여도 이건 좀 할 정도로 교육과정이 각박하다.

교육과정의 마지막 단계인 회고 프로젝트 단계에서 4주간 프로젝트 작업을 원활하게 수행할 수 있을 만큼의 교육과정 개편이 필요해보인다는 개인적인 견해다.

이 과정을 간신히 소화하고 Regular 과정에 함께 참여하게 되었다고 해도 과연 해당 인원이 정상적인 퍼포먼스를 낼 수 있을지도 의문이다.

추가로 Spring 3를 교육하기에는 Spring의 많은 내용을 교육해야한다.
토비의 스프링 책을 기준으로 생각한다면 조금은 체감이 될까 싶다.

이에 교육을 SpringBoot로 수행하는 동시에 레거시 프로젝트를 SpringBoot로 마이그레이션 (정확히는 리빌딩에 더 가까울 수도 있겠다)하는 작업이 함께 수행되어야할 것 같다고 생각한다.

불명확한 교육 대상자

초창기 동아리가 설립될 즈음에는 동아리 가입 조건에 군필자라는 조건이 있었다.
하지만 총동아리 학칙에 따르면 동아리 입부에는 조건을 두면 안된다는 학칙이 있어 이러한 제약을 두기 어려워졌고 군필과 같은 조건없이 교육생을 받기 시작했다.

가입 조건에 군필이 있는 경우 교육생이 Java에 대한 기본적인 이해도를 갖춘 경우가 대다수였다. 때문에 커리큘럼 상에 자바 교육이 없었다.

하지만 학년에 제약없이 교육을 해야하는 시점에서 프로그래밍, 웹과 관련된 지식이 전무한 1, 2학년을 대상으로 교육을 어디부터 해줘야할지 고민이 많았다.

이 때문에 지금과 같이 약 2주간 자바 교육이 편성되기도 했다.

하지만 이 과정은 컴퓨터 공학부를 기준으로 이미 학부과정에서 학습을 마친 3, 4학년에게는 되려 불필요한 과정이다.
학부에서도 교육하는 내용일 뿐더러 굳이 자바까지 교육을 해야하는가? 라는 개인적인 견해다.
Spring 교육만 해도 기간적으로 촉박하다고 느껴지는 것도 한몫한다.

커리큘럼 상 자바를 제외하는 방향성과 1, 2학년에게 자바 학습의 기회를 줄 수 있는 좋은 방향성이 없을지 고민해봐야겠다.

모집공고를 올릴 때 우테코 프리코스 과제정도를 함께 제공해줄 수는 있을 것 같다. 이 과정을 통해 교육 전 PR 제출 및 Java에 대한 기본 숙련도를 다질 수 있을 것이라고 기대하고 있다. 이를 통해 코드리뷰 과정을 간접적으로 경험할 수 있음을 추가로 기대할 수도 있겠다.

물론 가장 쉬운 방법은 모집 공고에 * 요구사항: 자바에 대한 기본적인 지식 이라고 걸어두면 되긴 한다.

자바의 정석같은 책을 독학해올 정도의 최소한의 의지는 있을 것이라는 가정하에 교육하는것이 교육자의 입장에서 되려 좋을지도 모르겠다는 생각이다.
동아리 운영 측면에서는 교육자의 리소스 또한 중요하니까..

개선 방향성

위와 같은 문제점들을 인지했고 우아한테크코스를 수료하고나서부터 문제점을 개선하고자 다양한 시도를 해볼 예정이다.

우선 백엔드로서 해결해야할 문제를 정리하면 다음과 같다.

  • 레거시코드 개편
    • Spring -> SpringBoot
    • 레거시 코드 개편에 따른 Regular 온보딩과정 개편
  • 교육과정 개편
    • Spring -> SpringBoot
    • Java -> 제외할 지 고민한다

초록 스터디

학교로 돌아가는 우테코 5기 수료생들 중 스터디 혹은 모임을 주최하는 크루를 대상으로 자료 제공 및 커뮤니티 환경을 제공해주는 하나의 커뮤니티다.

브라운, 브리가 관리하며 나, 아마란스, 홍실 3명이 초기 멤버로 참가하게 되었다.

현재 교육자(Regular)들을 대상으로 Regular 온보딩 커리큘럼을 구성하여 시험적으로 진행해보고 있으며 지속적인 피드백을 거쳐 해당 자료는 신규 Regular 전환 인원에게 온보딩 자료로 활용할 수 있을 것 같다.

현재는 진행 과정에 MVC, JDBC, Spring Core가 있으며 추후 지속적으로 컨텐츠를 추가할 의향도 있다. (JPA, 인프라 등)

초록 스터디와 관련된 정리는 별도의 카테고리로 이어질 예정이다.

SpringBoot 마이그레이션

정확히는 리빌딩이긴하지만 API Path를 유지하면서 이관한다는 관점에서 마이그레이션이라고 표현하려고한다.

현재 해당 API를 사용중인 클라이언트가 Web 뿐만 아니라 Android, IOS도 있기 때문에 API 버저닝 및 하위호환성을 반드시 지켜줘야한다.

또한 이관 과정에서 API 동작을 보장하기 위해 인수테스트도 같이 작성해야 할 것으로 보인다.

마찬가지로 SpringBoot 마이그레이션 과정에 대한 정리는 별도의 카테고리로 이어질 예정이다.

교육과정 개편

2024년 상반기부터 백엔드 교육과정을 개편해나갈 예정이다.

프론트엔드, 백엔드, 안드로이드 등 개발직군에서는 공통적으로 쓰이는 교육에 대해서는 영상자료 및 실습 레포 하나로 자동화할 수 있지 않을까 라는 생각도 든다.

이 과정에서 공통 교육 내용에 대해서는 영상으로 강의를 촬영해두는 것도 염두에 두고있다.
동아리 google 계정을 활용하여 동아리 내부적으로 Git 강의, 과제 제출방식 등에 대한 내용을 자동화할 수도 있을 것 같다.

또한 현재 진행중인 교육과정에 대해서도 지속적인 피드백을 받아야할 것 같다.

기타

동아리 운영 측면에서도 고민이 많다.
개발 동아리 특성인지 컴퓨터공학부 혹은 공대의 특성인지 잘 모르겠지만.. 구성원들의 적극성과 참여도가 떨어진다는 생각이 든다.

백엔드의 고민

백엔드 트랙 한정이지만 같은 고민들이 존재한다.

코드리뷰의 적극성

하나의 PR이 올라왔을 때 코드리뷰가 적극적으로 이뤄지지 않고 있다.

아무래도 온보딩 과정에 이러한 설명이 없었다는 부분도 크게 한몫하는 것 같다.
아주 옛날에 작성한 문서 하나를 던져주고 온보딩 해봐라! 하는 식으로 진행하고있으니 아무래도 코드리뷰 문화에 익숙해지긴 어려운것이 당연하다고 생각한다.

이러한 문제는 자연스래 작업속도의 지연에도 영향을 미치기 마련이라 팀 컨벤션 혹은 코드리뷰 문화의 정착도 해결해야하는 문제 중 하나다.

운영 측면에서의 고민

내년에 회장을 맡게 되었다.
아직 인수인계 전이긴 하지만 옆에서 봤을 때 느꼈던 어려움을 대략적으로 정리해보려고 한다.

동아리 자원을 적극적으로 활용

이렇게 인프라도 잘 되어있고, 동아리에서 제공해주는 자원도 풍부한데 이를 적극 활용하지 못하고있다는 생각이 든다.

Figma, AWS, DNS 등 동아리원들이 회비를 내면서 서비스를 운영하고 있는데 보다 다양한 챌린지를 하지 못하고 있는 모습이 아깝다는 생각이 든다.

최근 게임트랙에서 동아리방에서 무박 2일 게임잼을 진행했었고 이에 대한 결과물을 학교 축제에 출제하기도 했다.

위와 같이 짧은 기간 목적성을 가지고 동아리 구성원이 참여할 수 있는 해커톤같은 행사를 지속적으로 개최하면 좋겠다는 생각도 든다.

우선 해커톤, 이벤트스토밍 워크숍 등과 같은 행사들이 생각난다.

총동아리 연합회와 연계하여 축제 주점, 행사 관련 티켓팅 서비스를 만들어볼 수도 있을 것 같다.

추후 세부 기획이 나온다면 우테코 페스타고 팀의 API를 활용해볼 수도 있을 것 같다. 도메인 마음에 들어 (끄덕끄덕)
https://github.com/woowacourse-teams/2023-festa-go

소속감의 부재

코로나 팬데믹을 맞이하면서 지난 2년간 오프라인 모임을 갖지 않았다. 이러한 영향 때문인지 구성원들간의 친밀도가 상당히 어색하다고 느껴진다.
물론 각 트랙별로는 친하겠지만 다른 트랙간의 교류를 포함한 이야기다.

BCSDLab이라는 동아리에 소속되어있다는 소속감 또한 한몫 할것같다.

개인적으로는 웰컴키트가 이러한 소속감을 가장 쉽고 직관적이게 이러한 소속감을 해결해줄 수 있지 않을까? 라는 생각이 든다.

Regular 전환 시 이런 키링이라도 있으면 좋겠다

프론트엔드 트랙은 합격 메일도 보내준다는데 전체적으로 공통 양식같은걸 하나 두면 좋을 것 같다.

어제 보고온 2023 우아콘 - 조직문화를 개발하는 사람들에서 좋은 아이디어를 얻을 수 있지 않을까도 고민중이다.

정리

현재 동아리 내에서 해결해야하는 문제를 정리해보면 다음과 같다.

[교육]

  • SpringBoot 교육과정 개편
  • 교육과정 내 Java 제거 (대처방안?)
    • 교육 진행 전 프리코스처럼 제공
    • 과제 제출방식 문서화 혹은 영상?
  • Regular 온보딩 자료 개편
    • 초록 스터디 활용
      • 교육생 입장에서 네트워킹 도모 효과
    • SpringBoot 마이그레이션 과정 이해 자료
    • 현재 아키텍처 문서화
  • 기본적인 교육 자동화
    • Git 교육 공통교육으로 영상 혹은 실습환경 제작

[개발]

  • Spring 3 -> SpringBoot 마이그레이션
    • 구체적인 내용은 다른 게시글로 정리 예정 (할말이 많음)

[운영]

  • 동아리 자원 적극 활용
    • 해커톤 등을 진행할 때 임시로 배포할 수 있는 elastic beanstalk같은 자원을 제공할 수 있을 것 같다. (활동 후 종료)
  • 구성원의 소속감증대를 위한 컨텐츠 개발
    • 웰컴키트, 합격 메일 등

후기

2020년부터 항상 고민만하고 감히 실행할 엄두를 못냈던 것들이라 문제를 인식하기만 하는 지금 단계에서도 두려움과 기대감이 동시에 다가온다.. 여유 있을때 작업을 최대한 많이 땡겨놔야 학업이랑 병행하면서 문제없이 소화할 수 있을 것 같다.

지금도 잘 운영되고 있지만 이렇게 좋은 환경에서 아무런 도전도 하지 않는다는 것이 너무나 아깝다는 생각이 든다.

조금은 더 도전적인 마음으로 다양한 시도를 해보려고 한다.

구성원들의 적극적인 참여를 기대하고있다... 🙏

profile
안녕하세요 😆

10개의 댓글

comment-user-thumbnail
2023년 11월 16일

저도 동아리 가입하고 싶네요

1개의 답글
comment-user-thumbnail
2023년 11월 16일

저도 가입 시켜주세요

1개의 답글
comment-user-thumbnail
2023년 11월 16일

나이가 좀 있긴한데 저도 가입 가능할까요?

1개의 답글
comment-user-thumbnail
2023년 11월 17일

저도 가입시켜주세요

1개의 답글
comment-user-thumbnail
2023년 11월 28일

저도 가입 시켜주세요.

1개의 답글