개발자

왜 개발자는 평생 공부해야하나요?

2023년 02월 07일조회 6,479

안녕하세요. 컴공 22학번인 학생입니다. 제목은 조금 어그로이며.. 제가 궁금한 내용은 "기술이 계속 발전하다 보면 어느 때에는 추가적인 리팩터링을 진행하지 않더라도 괜찮아지지 않을까요?"입니다. 개발을 처음 접할때는 다들 "개발자는 평생 공부해야 하는 직업이다"라는 얘기를 많이 들어서 정말 현직자 분들이 그렇게 생각하시는지 궁금합니다. 물론 프로덕트를 개발에 제한이 있는 금융권이나 SI는 제외하고, 중견기업~네카라쿠배당토의 서버 개발자로 생각해주세요.

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 16

인기 답변

이수진님의 프로필 사진

왜 리팩토링을 해야하나요. 기술적인 관점보다는 서비스/비즈니스 관점으로 답변해보겠습니다. 비즈니스 규모가 커지고, 서비스가 고도화 되면서 여러 요구사항이 발생합니다. 신규 기능이 추가되거나, 기존의 기능을 고치고 개편하거나, 기존 기능을 아예 없애는 경우 등이 있습니다. 떡볶이 집을 들어서 설명해볼게요. 소규모 자본으로 동네 골목에 작은 떡볶이 가게를 창업했습니다. 차츰차츰 입소문을 타고 손님도 많아지고 떡볶이 장사가 잘 되기 시작합니다. (수익 창출) 떡볶이만 팔다가 뜨끈한 국물도 먹으면 좋을 것 같다고 손님들이 요청합니다. (기능 요청) 그래서 어묵도 팔려고 합니다. 어묵도 팔아보니 반응이 괜찮습니다. (A-B 테스트 진행) 이제는 떡볶이와 어묵도 함께 팝니다. (신규 기능 추가) 우선 장소가 협소하니, 떡볶이 조리대를 나눠서 한 칸은 떡볶이를 만들고 한 칸은 어묵을 조리하도록 변경했습니다. (신규 기능 추가로 인한 리팩토링 발생) 날씨가 점점 추워지니 더 많은 손님들이 안에도 들어가고 싶어합니다. 좌석이 부족합니다. 그래서 구석 한 켠에 공간을 확보해 스탠딩 테이블을 추가로 만들었습니다. (서비스 개편으로 인한 리팩토링 발생) 그리고 1년이 지났습니다. 떡볶이 장사가 더 잘 됩니다. (비즈니스 성장) 때마침 옆 가게가 싸게 나왔습니다. 그래서 확장을 하게 되었습니다. 혼자 가게를 감당할 수 없어 조리 담당과 서비 담당 인원을 충원했습니다. (개발자 고용) 기존 조리대도 너무 작아 새 것으로 교체하려고 합니다. 테이블 위치도 바꾸고 개수도 더 추가하려고 합니다. (대거 리팩토링 발생 예상) 인테리어 회사에 문의해보니 비용이 너무 높아 적자를 볼 것 같습니다. 그래서 점진적으로 인테리어를 개선하고자 합니다. (분기별로 리팩토링 결정 - 플래닝) 일단 새로운 조리대를 먼저 설치하고(새 모듈-코드로 교체) 올해 봄까지 먼저 벽 페인트 칠만 진행하는 것으로 합니다. (일부만 리팩토링 진행) 이처럼 서비스는 비즈니스 요구에 따라 끊임없이 변화하고 진화됩니다. 코드가 바뀌지 않는 서비스는 죽어있는 상태와 마찬가지 입니다. 그래서 개발자는 오래된 코드와 새로운 코드가 공존하는 불편한 상황을 늘 마주합니다. 결정의 때?가 도래하면, 다시 개발 투입 비용을 산정하고 프로젝트 우선 순위에 따라 리팩토링 여부를 결정하게 됩니다. 프로덕트 관점에서 리팩토링은 일정 지연의 요인이 될 수 있고, 기능 변경 사항이 없기 때문에 우선순위에서 낮아지게 됩니다. 이 때 개발자는 리팩토링 작업을 통해 얻는 이점을 의사결정자들에게 충분히 설명하고 설득시킵니다. 문제를 진단하고 최선-최고의 해결 방안을 제시하기 위해서는 전문적인 지식이 뒷받침되어야 합니다. 과거에 내렸던 판단이 오늘날은 옳을 수도, 아닐 수도 있기 때문입니다. 그래서 개발자는 계속 지식을 쌓아야 합니다. 끝으로... "물론 프로덕트를 개발에 제한이 있는 금융권이나 SI는 제외하고 라고 말씀하셨는데..."요.. 모든 금융/SI 개발자 분들이 일이 없이 편하게 개발하시지 않습니다. 편견을 갖지 말아주셨으면 합니다. =)

김동우님의 프로필 사진

김동우

data scientist 준비생2023년 02월 09일

굉장히 이해하기 쉽고 직관적입니다 :)

명선호님의 프로필 사진

명선호

LG전자 임베디드 개발자2023년 02월 09일

이만한 비유는 오랜만에 보는 것 같습니다. 재밌게 읽었어요!

신제품님의 프로필 사진

신제품

디자이너2023년 02월 10일

이건...거의 칼세이건 코스모스 수준의 인문학적 관점이네요. 맛있게 읽었습니다 ㅎㅎ

인기 답변

김민식님의 프로필 사진

개발자는 평생 공부해야하는 직업이기 때문에 매력이 있는 것이라고 생각합니다. 우리가 가진 시간과 실력은 매일 새로운 것을 만들어내는 기술력을 절대로 따라갈 수 없습니다. 이런 현실에 때론 낙심이 들기도 하지만 그렇기에 더 훌륭한 개발자가 되기 위해 노력하는 것이 개발자의 매력이라고 생각합니다. 실제로 오랫동안 개발을 해온 분들을 보게되면 훌륭한 개발자라는 생각이 들지 않고 훌륭한 사람이라는 생각이 듭니다. 평생 공부를 하지만 결국은 훌륭한 사람이 되기 위한 길이 그것이라면 해야겠죠! 하지만 평생 공부를 해야한다는 것을 압박감으로 느낄 필요는 없다고 생각합니다. 실력있는 개발자와 그렇지 않은 개발자를 가리는 차이는 얼마나 많은 것을 알고 있냐가 아니라 어떤 지식과 기술을 자신의 경험과 자신의 올바른 가치로 표현할 수 있는, 진짜 내 것을 말할 수 있고, 그것만으로도 불안하지 않을 수 있는 단단함이라고 생각합니다! 👍👍👍

인기 답변

김태경님의 프로필 사진

개발자가 아니라도 모든 직업이 평생 학습을 요구합니다. "개발자라서" 평생 공부하는 건 아닙니다. 더 나은 개발자가 되려고 공부하는거라고 생각해요. 그리고 다른 직업에 종사하시는 모든 분들도 마찬가지겠지요.

Jihyeon님의 프로필 사진

Jihyeon

위코드 웹 개발2023년 02월 10일

저도 동의합니다! 요즘은 직군 상관 없이 평생 배워야 하는 시대인 것 같아요.

인기 답변

큐제이님의 프로필 사진

#1. 일단 질문자가 "평생 공부" 라는것에 어떤 의미를 부여하고계신지 궁금합니다. 제 생각부터 이야기하면 "평생 공부" 라는것은 제게 일종의 놀이입니다. 새로운 분야를 알아가는 과정은 늘 재밌습니다. <늘짜릿해> 어쩌구 짤 저는 누군가 시키지않아도 늘 무언가를 배우고있습니다. 새로운 분야에서 느끼는 성장의 즐거움을 알거든요. 초보인상태로 배워가면서 한단계 한단계 제 실력을 업그레이드 할수 잇는 것 인생에서 느낄수있는 큰 즐거움입니다. #2. 평소에 갖고있던 안좋은 생각부터 이야기해보겠습니다. 저는 사실 "이 질문의 아래에 깔려있는 특정 문화" 가 굉장히 마음에 들지않습니다. "학생때 죽어라 공부해서 평생 써먹는다" 고등학교 다닐때 부모님들이 많이들 이야기하십니다. "고3때 공부해서 대학가면 평생써먹는다." 전문직 얘기도 오지게 많이하시죠 "고시 공부 빡세게해서 전문직 라이센스 받아두면 평생 공부안해도 놀고먹는다" 공무원, 공기업을 평생직장이라고 선호하는 문화도 굉장히 맘에 안듭니다. "평생직장" <- 이 단어도 속에 함의된 "특정 문화"가 있습니다. "취업준비 한번만 빡세게 하면 붙어서 평생 먹고산다" 왜 안좋아하냐구요? 그깟 몇년 공부 잘한걸로 평생 잘먹고 잘사는게 말이되나?ㅋㅋㅋ 저런 문화는 사회적 문제를 만듭니다. #3. a. 인생의 특정 몇년 희생을 당연한것마냥 치부해버립니다. b. 그 "평생가는 시험, 면접" 등이 인생에서 너무 중요한 것이 됩니다.  c. a 에서 과하게 고생한 세월에 대한 보상심리가 생깁니다. #4 질문으로 돌아와봅니다. 개발을 처음 접할때는 다들 "개발자는 평생 공부해야하는 직업이다" 라는 얘기를 많이 들어서... 정말 현직자 분들이 그렇게 생각하시는지 궁금합니다. -> a. 네 그렇게 생각합니다. 개발자는 평생 공부하는 직종이고, "공부하는 방법" 그 자체가 역량인 직업입니다. 개발자들은 회사 업무시간에 돈받으면서 공부합니다.(개 꿀~) b. 문제있나요? 평생 공부하는게 자연스러운 집단은 속해있는것만으로 축복입니다. 20년도 더 된 옛날 무용담을 반복재생하는 놈팽이그룹보다 어제 배운 지식을 자랑하는 그룹이 훨씬 다이나믹하고 즐겁습니다. #5. 나이가들고, 자식이 생기고 자식이 커가면서 자식교육에 관심이 많아지는 분들이 많습니다. 그런데 이분들이 자식교육을 할때 사교육에 돈을 투하하는것보다 훨씬 효율적인 방법이 있습니다. "부모님부터 공부하면됩니다." #6. 개발자는 평생 공부하는 직업입니다. 저는 이 특성을 개발자 직업의 큰 장점이라고 생각합니다. 치매 예방에 아주 탁월한 습관이죠~ 공부하는거 개발자들중 능력에 비해 특출나게 고연봉을 받는 직종은 둘중하납니다. (능력에 비해 고연봉이라는건 한마디로 꿀빤다는겁니다~) "누구도 안쓰는 옛날기술" 을 적은 수요의 특정 직장에서 고연봉을 받는것. "누구도 잘 모르는 최신기술" 을 많은 수요의 직장들에서 고연봉을 받는것. 전자는 오래된 항공기, 오래된 금융시스템 등에서 사용하는 오래된 프로그래밍 방법 후자는 최신 트렌드를 반영한 모든 글로벌 기업이 원하는 "기술" 5년전엔 "딥러닝" 에 대한 수요가 그런느낌이었고, 지금은 Large Language Model (GPT같은 인공지능 모델) 이 그런류입니다. 보통 "공부 하는 능력" 에 최적화가 되어있는 개발자들은 "평생직장" 같은것에 큰 가치를 두지 않습니다. 돈 많이 줄테니까 오라는데가 하도 많아서... 음... 답변끝.. 제목은 조금 어그로이며.. 제가 궁금한 내용은 "기술이 계속 발전하다 보면 어느 때에는 추가적인 리팩터링을 진행하지 않더라도 괜찮아지지 않을까요?"입니다. -> 음.. 리팩토링이 필요없어지는 기술발전의 시기는 특이점인거같습니다 ㅎ 인공지능이 알아서 다해주겟죠~ 요히~ 그게아니라면 평생 리팩토링하셔야합니다 작년의 내가 짠 코드는 정말 멍청한 사람이 만든 코드거든요ㅎ

인기 답변

유택범님의 프로필 사진

안녕하세요. 질문하신 내용을 보고 드는 생각을 적어보자면 기술이 계속 발전하기 때문에 계속 공부해야 하는 것 같습니다. 지금 상황에서 최선의 해결책이 있다고 해도 시간이 지남에 따라 여러 문제가 생기고 이런 문제들을 해결할 수 있는 더 좋은 해결책이 나온다면 그 기술을 공부해서 적용해야겠죠 꼭 프로덕트에 직결되지 않더라도 내가 하는 일을 더 편하게 해주거나 다른 사람과 협업에 더 도움이 되는 기술이 나올수도 있구요

인기 답변

........님의 프로필 사진

농담반 진심반으로 답변 드리자면 잘 먹고 잘 살려고 공부하죠. ㅎㅎ 이상한 사람중 한 사람이라고 생각해주세요. ㅋㅋ

인기 답변

이범희님의 프로필 사진

개발자로 경력을 오랜 시간 쌓아오면서 그동안은 `공부`라는 것을 `기술 공부`라고만 스스로 생각을 해왔던 거 같아요. 요즘의 저는 `기술 공부`뿐 아니라 근본적으로 개발자란 어떤 직업인가? 라는 질문을 스스로 하게 돼요. 그러면서 하는 생각은 기술은 문제를 해결하는 도구일 뿐이지 그것에 매몰되면 안 되겠다는 생각을 계속하게 돼요. 어떤 문제가 있지? 어떤 문제를 해결할까? 하는 생각을 계속하면서 기술 외적인 부분에서도 많은 관심을 두고 배우려고 노력하게 되더라고요. 22학번이시면 이제 21살, 정말 사회생활을 막 시작하실 텐데요. 소프트웨어 개발자는 기본적으로 프로그램을 만드는 실력이 필요하죠. 그래서 자신의 전문 분야에 대한 프로그래밍 기술은 지속해서 갈고 닦아야 하는 것은 자명한 일일 거예요. 다만, 개발자가 기술을 익히는 이유를 항상 생각하면서 너무 기술에만 매몰되지 않는 공부를 하시면 좋을 거 같아요. 저도 이제서야 그런 부분을 깨닫다 보니 이런 답변을 하게 되는 거 같아요. PS 부디 즐거운 학창 생활을 하시길 바라요.

눈팅님의 프로필 사진

먹고 살려고 하는건데 뭐.. 개발공부안해듀 먹고살방법은 많죠 ㅎㅎ 취사선택하시면 됩니다.

정효성님의 프로필 사진

기술 스택은 끊임없이 발전하고 생겨납니다. 끝은 없어요 만약 끝이 있다고한다면 비싸게 돈주고 개발자 안쓰죠

황대연님의 프로필 사진

많은 직업들이 평생공부가 필요할 수 있지만, IT개발분야는 그 어느때 보다도 내가 학습한 기술이 낡은기술이 되는 주기가 짧아 졌습니다. 항상 안테나를 켜두시고, 뒤쳐지지 않기 위해서 항상 공부해야 한다고 생각합니다.

준님의 프로필 사진

그냥 현재에 안주하면서 고만고만하게 할거면 공부안해도 되죠

현기님의 프로필 사진

개발 뿐만 아니라, 원래 거의 모든 분야는 공부를 계속 해야 합니다~

삭제된 사용자님의 프로필 사진

삭제된 사용자

2023년 03월 05일

컴퓨터는 도구입니다 특히 일(비즈니스)하는걸 돕는 도구죠 비즈니스 환경은 계속해서 변화합니다 그 도구도 변화할수밖에없죠 그래서 거기에 적응하기위해 공부할수밖에없습니다 결국엔 그 변화의 본질과 맥락을 파악하셔야, 그 공부가 부담으로 다가오지않고 내 경쟁력이 될수있습니다 개발자 얘긴 한마디도 안했습니다 비개발자들도 공부 상당히많이하거든요

조승화님의 프로필 사진

모든 산업군은 새로운 기술을 공부해야 합니다. IT쪽의 문제가 기술 발전 속도가 너무 빨라서, 기존 산업군 대비 학습량이 너무 많다는 것입니다. 예를 들면 다른 산업군의 3년의 발전 속도가, IT는 3달 정도 속도라 끊임 없는 학습을 강요(?) 받습니다.

강동엽님의 프로필 사진

10년전쯤에 java 1.4기반으로 개발된 업무용 프로그램을 아직도 사용하고 있고 그걸 관리하는 담당자가 그것만 보고 있다가 이직할 사유가 생겼습니다. 이제 어떻게 해야 할까요? 난 java 1.4밖에는 모르는데... 하고 실직을 해야 할까요?

김동휘님의 프로필 사진

1. 새로운 프레임워크, 새로운 언어도입(흔한 일은 아니지만)으로 회사/팀 내 생산성 향상. (내가 편해지기 위해) 2. 내가 안 하면 다른 사람/다른 팀/다른 회사/다른 나라의 누군가가 트랜드에 발맞춰 신기술 도입하여 시장 장악. (경쟁우위 차지) 3. 구버전의 경우 지원 끊기면 보안 구멍 뚫리거나 성능 문제 때문에 고객들이 불편해하고 눈 돌려버립니다. (고객ㄴ들에게 새로운/더 나은 경험 제공)

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!