우리의 끝은 정말 치킨집일까

Broccolism·2024년 9월 21일
57

내 거친 생각과

목록 보기
6/6
post-thumbnail

🍗 질문.

2017년 12월, Quora에 질문글이 하나 올라온다.

question on Quora

나이가 들수록 일자리를 찾기 어려워져서 소프트웨어 개발자가 된 것을 후회합니다. 하지만 프로그래밍 외에는 할 줄 아는게 없습니다. 어떻게 해야 할까요?

개발자로 취업한 지 얼마 안 되어서 똑같은 고민을 한 적이 있었다. 직장에 50대 개발자가 거의 보이지 않았기 때문이다. 애초에 IT 산업이 제조업처럼 역사가 깊은 산업이 아니기도 하고, 지금 다니는 곳이 금융이나 건설 등 다른 분야가 아닌 IT 회사인 것도 한몫을 한 것 같다. ‘우리 (직책)님은 대략 이 정도 나이쯤 되시는 거 같던데?’ 라고 말하면 조금 놀라는 반응이 돌아오곤 한다.

돌이켜보면 꽤 이른 고민이었던 것 같지만! 다른 사람들은 어떻게 생각하는지 궁금해져서 답변을 읽어보기로 했다.

참고로 나는 아직 고령 소프트웨어 개발자가 아니다.... 그저 몇 년 안 된 주니어 개발자일 뿐.... 하지만 내게도 도움되는 내용이 꽤 있어서 글을 적어본다.

답변

가장 많은 추천을 받은 답변

Most liked answer

Quora 프로필을 100% 신뢰할 수는 없지만, 왠지 짬이 많이 찬 것 같은 사람의 답변을 보자. 이 질문에 대한 43개 답변 중 가장 많은 upvote 인 1,024개 upvote를 받았다. (1,023 upvote 이길래 좋아요 눌러서 1,024로 만들었다.^^ 뿌듯)

요약

  • 최신 기술을 계속 따라가면 개발자로 일하는데 큰 문제가 없다고 생각한다.
  • 하지만 많은 사람들이 그걸 제대로 하지는 않는 것 같다. 제대로 최신 기술을 따라가는 방법 2가지:
    • 새로운 언어나 아키텍처를 반드시 배워야 하는 상황을 만들어야 하며, 이를 위해 새로운 기술을 사용하는 프로젝트에 자원하거나 모르는 분야의 강의를 맡는 방법이 있다.
    • 새로운 언어나 아키텍처를 진정으로 이해하려면 그것을 좋아하게 될 때까지 학습해야 하며, 그런 접근 방식이 인기 있는 이유를 이해하는 것이 중요하다.

원문

I’m nearly 60, and I just learned React-Redux and am building a website using it. (Sweet architecture, btw — much nicer than Angular)

I don’t think there’s much problem staying employed if you stay current. The problem is that every one gives lip service to lifetime learning, but they don’t actually do it. Here are two not-typical pieces of advice on how to change that.

  1. Set yourself up in situations where you must learn a new language, architecture, etc. If you don’t make it a must-do situation, you’ll put it off year by year until a decade later you’re out of date, or you’ll set it aside once you get frustrated. If at some point in the learning process you’re angry at yourself for having put yourself in a position where you couldn’t get out of learning all this stuff, you’re doing it about right. I like to volunteer to do projects using a new language/technology, or to teach a course in an area I know nothing about. Then I’m stuck, and I have to learn. Whatever works for you is fine as long as you have enough skin in the game that you can’t back off once you’ve committed.
  2. You don’t understand the new language, architecture, etc. until you like it. If a new programming approach is popular, it’s for a reason, and not just because “kids these days have no judgment”. An example: I learned JS a while back, and had a hard time getting used to a loosely typed language, and to closures. I felt I’d finally arrived as a JS programmer when I went back to Java on a different project, and felt confined by the type system and lack of closures. I actually liked JS! Liking the new thing is a step beyond just understanding it. Don’t stop till you reach that point.

특히 새로운 언어나 아키텍처를 진정으로 이해하려면 그것을 좋아하게 될 때까지 학습해야 하며, 그런 접근 방식이 인기 있는 이유를 이해하는 것이 중요하다. 는 구절이 인상깊다. 다른 주니어 개발자들과 스터디나 기술 공유를 할 때면 종종 나오는 질문이 있었다.

‘JS에 대해서 안다’ 라는 말을 할 수 있으려면 그걸 어느정도까지 알고 있어야 할까요?

공식 문서를 보지 않고도 JS로 코드를 짤 수 있을 때?

다른 사람이 짠 JS 코드에서 버그를 찾아 고쳐줄 수 있을 때?

JS를 써서 혼자서 프로젝트를 완성할 수 있을 때?

어려운 질문이었는데 이제는 조금이나마 답변을 할 수 있을 것 같다. ‘Java로 코드 짜다가 JS 생각이 날 때요.’ JS가 어떤 패러다임을 추구하고, 다른 언어와 어떤 차이가 있으며, 그 차이점이 어떤 결과를 낳는지 등… JS에 대해 완전히 이해하고 있을 때 비로소 그걸 안다고 말할 수 있을 것 같다. 언어뿐만 아니라 나머지도 마찬가지다.

그리고 대댓글

이 답변에 대한 댓글도 살펴보자. 코멘트 96개를 일일이 보기엔 양이 너무 많으니 요약을 해봤다.

  • 나도 동의함.
  • 소프트웨어 개발 분야에서 살아남기 위해서는 지속적인 학습과 새로운 기술에 대한 최신 동향 파악이 중요하다.
  • 기술 업계에서 연령에 따른 차이가 존재하는건 사실이지만, 최신 기술을 사용하는 나이 든 개발자에게는 여전히 기회가 있다.
  • 문제 해결, 혁신, 리더십 기술에 집중하는게 좋다.
  • 풍부한 경험을 잘 활용하면 오히려 더 유리해질 수 있다.
    • 자신의 경험이 장점이 될 수 있는 틈새 분야나 레거시 시스템을 탐색하거나
    • 자체 소프트웨어 제품을 만들어 창업을 하는 것.
  • 축적된 기술을 바탕으로 맡을 수 있는 역할들
    • 수석 엔지니어, 아키텍트, 관리자
    • 애플리케이션 지원, 기술 영업
    • 전문 서비스를 제공하는 프리랜서, 컨설턴트

연령에 따른 차이는 분명히 있을 것이다. 나이는 숫자에 불과하지만 그동안 쌓은 경험과 연륜은 무시 못 한다는 것이지… 제대로 된 커리어를 쌓았다면 오히려 맡을 수 있는 기회는 좀 더 넓어지는 것 같다.

이제 나머지 답변도 살펴보자.

고령 소프트웨어 개발자를 위한 조언

  • 새로운 기술을 계속 습득하고 경력 전반에 걸쳐 학습을 지속할 것.
  • 기술 리더십이나 관리자 역할로의 전환도 고려해볼만 함.
  • 소프트웨어 개발 기술을 활용할 수 있는 인접 분야를 탐색하거나
  • 데이터 분석, 사이버 보안과 같은 보완적인 분야에서 역량을 강화하는 방법도 있음.

꼭 고령 개발자가 아니더라도 모두에게 해당될만한 이야기도 있었다.

소프트웨어 개발 업계 종사자를 위한 전략

  • 새로운 언어나 아키텍처를 반드시 배워야 하는 상황을 만들자.
  • 새로운 기술을 피상적으로 배우는 것이 아니라, 이해하고 감상하는 것을 목표로 할 것.
  • 새로운 기술과 개념을 학습하는 것을 귀찮은 일이 아닌 즐거운 일로 여기며 계속 배우기.
  • 프로그래밍 외의 취미를 유지하여 재충전하고 잠재적으로 새로운 경력 옵션을 탐색할 것.

다 비슷비슷한 말을 하는 것 같다. 그 중 핵심은 ‘새로운 것을 제대로 습득할 것’. 그러다보면 어떤 역할이든 기회가 있을 것 같다.

💭 생각

물론 다른 직업도 평생 공부해야하는건 맞지만 우리쪽은 유독 트렌드에 민감하고 빠르게 변화한다. 그와중에 새로운 것에만 집착하지 말고 하나를 제대로 파고드는 것도 중요하니 피곤한 직업이 아닐 수 없다!!! 본가에 내려갈 때마다 교육업에 종사하는 우리 부모님은 아직도 대학생마냥 노트북을 붙잡고 공부하느냐고 물어보신다. 네 맞아요.... 저는 평생 공부해야하나봐요. 😂

스스로 불러온 재앙에 짓눌려~

하지만 그래도 재밌으니 계속 남아있는게 아닐까. 세상의 소프트웨어 프로그래머들 모두 화이팅.

원본
I regret becoming a software developer because I can't find jobs as I get older. Aside from programming, though, I have no other skills. ...

profile
설계를 좋아합니다. 코드도 적고 그림도 그리고 글도 씁니다. 넓고 얕은 경험을 쌓고 있습니다.

6개의 댓글

comment-user-thumbnail
2024년 9월 30일

본문에 쓰신거처럼 여러 갈래가 있는 거 같아요 은퇴까지 개발에만 몰두할것인가 혹은 관리자(예를 들어면 CTO) 포지션으로 넘어갈 것인가 정답은 없고 어떤 포지션으로 가던 공부는 꾸준히 해야겠지만 개발 베이스 관리자분들은 하나같이 인력관리가 개발보다 배는 힘들다.. 라고 말씀하시더라구요 ㅋㅋㅋㅋ 뭔가 다른 역량?을 쌓는 연습도 필요해보입니다

1개의 답글
comment-user-thumbnail
2024년 9월 30일

꼭 나이 많은 개발자뿐만 아니라 어리고 새롭게 시작하는 개발자들 또한 실천해야하는 것들이내요!

1개의 답글
comment-user-thumbnail
2024년 10월 3일

잘 읽고 갑니다!
화이팅 화이팅

1개의 답글