개발자
안녕하세요 백엔드 개발자로 취업한 신입입니다. 인턴 생활을 4개월 좀 안 되게 했고 이번에 정규직 전환이 확정되었습니다. 심각한 문제가 있지 않은 이상 정규직은 다 되는 회사입니다. 인턴 생활을 하면서 제가 개발자로서 성장할 수 있는 사람인지 의구심이 들어서 조언과 냉정한 대답을 듣고자 글을 올려봅니다. 전공자이지만 개발자에 뜻이 없어 공부는 안 하다가 졸업하기 1년 전에 프로젝트 두 개 만들고 지금 회사에 취업했습니다. 객관적으로 봤을 때 저는 실력이 정말 많이 부족합니다. 입사 초에는 단순한 수정사항도 하루가 꼬박 걸리고 야근까지 하는데도 해결이 안 돼서 선임님께 질문하고 혼도 났습니다. 처음하는 일이 너무 오래 걸립니다. 한 번 해결하고 이후에 비슷한 작업을 하면 어느정도 응용해서 금방 해결할 수 있으나 그 한 번이 오래 걸리고 이 과정에서 좌절도 많이 합니다. 이슈가 해결이 안 될 때 저는 최대한 할 수 있는 데까지 했다고 생각하고 질문을 한건데 선임이 “이거 해보셨어요?” , “이건 어디서 실행되는거예요?” 라고 질문 하시면 제가 거기까지 생각하지 못했다는 걸 깨닫게 됩니다. 당연히 해보고 알아봤어야하는건데도요. 선임이 “이렇게 해보는 건 어때요?” 라고 하시면 그제서야 방법이 생각납니다. 혼자 할 때는 죽어도 생각이 안 났는데 말이죠. 혼자 생각해내는 능력이 너무 부족한 것 같습니다. 업무를 받으면 세 개 중 하나는 업무 요구 사항을 정확히 이해하지 못 해서 다시 하게 되는 일이 생깁니다. 저는 지금 회사에서 하는 일이 재밌습니다. 딱 코딩만 하는 게 아니고 이것 저것 it에 관련된 다양한 일을 많이 해서 더 좋아요. 그래서 지금 회사에 더 다니고 싶은데 제가 개발자로서 성장할 수 있는 사람인지 잘 모르겠습니다. 한다고 늘기는 할지... 버틴다고 업무 능력이 상승할지... 곧 새 프로젝트의 신규 화면 개발을 위해 투입이 될텐데 자신이 없어요... 계속 공부하고 있고 코드도 시간 날 때 마다 분석하고는 있는데 제가 그 프로젝트에 투입 되어서 업무를 잘 수행할 수 있을지 모르겠습니다. 제가 이 회사에 다니는 게 저희 부서 사람들에게 피해가 되는 게 아닐지 걱정돼요. 저는 개발자를 하다가 데이터 분야로 가고싶다는 목표가 있습니다. 하지만 빨리 다른 직업을 찾아야 하는건지 고민입니다. 현실적인 조언이 필요합니다. 감사합니다.
답변 4
인기 답변
안녕하세요, 회사에서 하고 계신 일이 재밌다고 하신 점은 다행인데, 본인이 생각하기에도 기초가 부족하고 다른 사람에게 피해를 줄까봐 걱정이라고 하셨군요. 그런데 제가 보기에는 여느 평범한 개발자가 겪는 평범한 성장 과정처럼 느껴집니다. 그러니까 질문자님이 겪고 계신 상황이 그렇게 이상하다거나 직업을 바꿔야 할 정도인지의 심각성으로 보이지는 않아요. 스스로의 부족한 점만 잘 개선하려고 노력하신다면 충분히 좋은 개발자가 되실 수 있을 것 같아요. 일단 "혼자 생각해내는 능력이 부족한 것 같다" 고 말씀하신 부분에 대해서 얘기해보죠. 단순한 수정 사항을 고치는 데에 많은 시간이 걸리는 것은 질문자님의 하드 스킬이 부족하기 때문으로 생각됩니다. 여기서 하드 스킬이라는 것은 말 그대로 질문자님의 프로그래밍 실력이죠. 이건 그래도 괜찮아요. 신입으로 입사하셨다고 하기도 했고, 여러 프로젝트를 진행하면서 실무 경력을 쌓다보면 충분히 실력을 늘릴 수 있습니다. 시간이 해결해 줄 문제라고 생각됩니다. 물론 열심히 회사 업무 하고, 강의도 듣고, 책도 보고, 사이드 프로젝트도 해보고, 블로그에 정리도 해보는 등의 노력은 물론 필요하죠. 다만 할 때까지 해본 후 질문을 하는 행위는 소프트 스킬입니다. 소프트 스킬은 업무를 둘러싼 프로그래밍 외적의 능력입니다. 업무를 받아들이는 태도, 커뮤니케이션을 할 때의 태도 등이 포함되죠. 소프트 스킬은 질문자님이 충분히 의식하고 노력하면 빠른 시간 내에도 개선할 수 있습니다. 그렇기 때문에 소프트 스킬을 집중적으로 개선하려 노력해봅시다. 어떤 문제를 해결하려고 할 때 최대한 할 수 있는데까지 해결하려는 태도는 좋습니다. 다만 여기에서 주의해야 할 몇 가지 관점을 제시하고 싶네요. 첫 번째, 코드를 짜기 전에 머릿속으로 설계를 먼저 해봅시다. 어떤 문제를 듣자마자 "아하, 이건 이런 기술이나 이런 방법을 써서 해결하면 되겠군" 이라는 생각이 들지 않는다면 바로 코드를 짜러 가지 마세요. 일단 머릿속에서 추측을 해봅니다. "이런 문제는 혹시 이 방법을 써서 해결할 수 있을텐데?" 싶은 생각이 들면, 그 내용을 구글에 검색해봅니다. 정답인지 오답인지는 중요하지 않습니다. 내가 마주친 문제의 상황, 그리고 그것의 해결책을 내 머릿속에서 연결하려는 시도를 해보았기 때문입니다. 이것이 반복되면 하드 스킬의 성장과도 이어지고, 문제가 응용되거나 복잡해지는 상황에서도 침착하게 문제를 해결할 수 있습니다. 물론 이것이 모든 문제 해결 상황에 적용될 수는 없겠지만, 이러한 과정을 통해 문제 해결 능력을 뇌에 각인시킬 수 있습니다. 두 번째, 본인이 생각했던 것보다 작업이 오래 걸릴 것 같다면 선임분에게 빠르게 SOS를 쳐야 합니다. 회사에게는 문제를 시간 내에 해결하는 것이 그 무엇보다도 중요합니다. 제가 만약 선임이었다면, 간단한 문제를 못 풀었다는 것에 화가 나기보다는 그것을 왜 빨리 해결하려는 노력을 하지 않았는지에 더 화가 날 것 같네요. 물론 본인에게는 이러한 과정이 부끄럽게 느껴질 수도 있지만 솔직한 것이 장기적으로는 더 도움이 됩니다. 그리고 질문자님은 신입이기도 하니까 그렇게 뭐라 하진 않을 것 같아요. 그렇기 때문에 여기에서 해볼 수 있는 액션 아이템은 나에게 특정 태스크가 맡겨진다면 대략적으로라도 일정을 산정하고 공유해보는 습관을 들이는 것입니다. (ex: "이 작업은 제가 늦어도 내일까지 해보겠습니다. 혹시라도 일정이 늦어질 것 같거나 다른 분의 도움이 필요할 때는 공유드리겠습니다!") 세 번째, 질문을 하기 전에 충분한 맥락을 제공하는 습관을 들입시다. "이건 어디에서 실행되는 거에요?" 라고 선임이 역질문을 하는 것을 보고 생각이 났네요.질문을 잘 하는 몇 가지 방법들은 검색하면 많이 나옵니다. 질문을 하기 전에 "내가 어떤 문제를 해결해야 하는 상황인데, 이 과정에서 어떤 시도를 해보았고, 어떠한 이유로 안 되어서 도움이 필요하다!" 정도를 글로 한 번 정리한 후 이야기한다면 답변해주시는 선임분이 되게 좋아하실 거에요. 네 번째, 업무의 요구 사항을 제대로 이해하지 못한다는 것은 약간 다른 이야기입니다. 본문에 나온 상황의 경우에는 "요구사항을 제대로 이해하지 못해서 벌어진 문제" 라기보다는 "문제 상황과 하드 스킬의 부족" 에서 오는 것으로 느껴졌거든요. 요구 사항 분석을 제대로 못 했다면 처음에 이야기했던 것과 완전히 다른 작업을 진행해와야 고민해볼 문제로 보여요. 질문자님은 그 문제를 해결할 방법을 떠올리지 못했던 것인데 그것이 요구 사항을 이해하지 못했다고 보기에는 어렵습니다. 이건 문제 상황을 많이 경험해보고, 하드 스킬을 쌓으면 충분히 해결될 상황으로 보여요! 다섯 번째, 똑같은 질문은 하지 않도록 메모하는 습관을 들입시다. 질문은 충분히 할 수 있습니다. 다만 답변자 입장에서, 저번에 해준 답변을 또 물어보고 있다면 "얘는 내 얘기를 귓등으로 듣고 넘기나?" 라는 생각이 들 거에요. 한 번 질문을 했고 거기에 대한 답을 얻었다면 눈에 잘 보이는 곳에 메모를 꼭 해두고, 나중에 찾아보세요. 마지막으로 새 프로젝트의 신규 화면 개발을 위해 본인이 투입될 예정이라고 하셨습니다. 자신이 없다고 하셨는데, 생각을 달리 해보자구요. 새 프로젝트에서 여러 문제를 맞닥뜨릴 때 위 과정을 반복한다면, 이만한 "소프트 스킬 향상" 에 도움이 될 만한 시간이 또 있을까요? 개발에 참여하면서 "하드 스킬 향상" 에도 도움이 될 거구요. 나중에 데이터 쪽으로 직무를 변경하신다고 해도 이런 과정에서 배운 소프트 스킬은 본인의 IT 커리어 전체를 아울러서도 큰 도움이 될 것입니다. 그렇기 때문에 이번 프로젝트를 좋은 기회로 삼아서 열심히 노력해보시는 것을 추천드립니다. 그리고 개발하다보면 누구나 다 실수하고 배우는 법이에요. 처음부터 잘 하는 사람 없고, 실수 안 하는 사람 없어요. 물론 본인을 관대하게 여겨서는 안 되지만, 이렇게 고민한 흔적들을 나중에 되돌아보면 '그땐 진짜 별 것 아닌 것 가지고 고민했구나' 생각하실 거에요. 아무튼 이런 고민들을 발판삼아 더 나은 개발자가 되시기를 기원합니다!
인기 답변
음, 믿지 않으실지 모르겠지만, 전 경력20년이 넘는 백엔드 개발자인데, 이직할 때마다 비슷한 생각을 하곤 합니다. 새로운 환경에서는 경력무관 어렵고 불안하기 마련인 것 같습니다. 신입은 신입 나름대로, 경력은 경력 나름대로 적응과 훈련이 필요한데요 자기 자신을 그렇게 몰아붙일 필요는 없어요. 현명한 사람이라면, 신입에 대한 기대가 크지 않습니다. 경력자들이 보기에는 답답할 수도 있겠지만, 그게 신입입니다. 초보운전 표시가 차 뒤에 붙어 있으면, 경력 운전자들이 배려야 하겠지만, 답답해 하는 건 또 어쩔 수 없죠. 초보에는 다 그런 거니, 익숙해지면 됩니다. 다른 초보에 비해 더 느린 거 같아서 고민이 될 수도 있지만, 사실 따져보면, 그래봤자 초보운전입니다. 경력자가 보기엔 똑같은 초보운전이에요. 설령 질문자님의 걱정대로 내가 더 못한 초보운전이라고 해도, 크게 차이나는 것도 아닙니다. 오히려, 이렇게 걱정하는 마음이 있다는 게, 역으로 성장 가능성이 있다고 봐야죠. 역으로 초보가 원래 그런거지라고 맘놓고 있어버리면 끝없이 초보스러워서 문제가 될 수도 있지요. 초보이면서 주제파악 못해서 과감하게 차선 막 끼어들고 그러다가 크게 사고가 날 수도 있죠. 질문자님에게 해당되는 얘기는 아니지만, 경력자도 마찬가지입니다. 그래도 내 경력이 이만큼 있는데, 이직한 뒤에는 막 곧바로 역량 발휘하고 싶겠지만, 누구나 적응기간이 필요합니다. 회사마다 분위기나 문화와, 기술적 배경이 모두 다르고, 섵불리 옛 경험을 가정해서 일을 벌이다가는 큰 코 다칠 수도 있죠. 경력자도 이직 후에는 내가 경력 값을 못하는 게 아닌가 걱정하기도 합니다. 그 놈의 걱정이 문제입니다. 이건 인류의 공통 정신병인것 같아요. 다시 냉정하게 돌아와서, 정말 님의 걱정대로, 주변에 민폐가 되고 있을 수도 있습니다. 그럼 얼릉 더 그만큼 적응해서 밥값을 하게 되면 더 고마운 일이 됩니다. 어차피 신입채용은 회사 입장에서 복권 투자입니다. 밥값을 하기까지 꽤 오래 걸리는데다, 밥값하게 되고 나면 이직하기 십상이죠. 님이 당첨복권일지 꽝일지는 아직 모르는 일입니다. 걱정할 시간에 좀 더 열심히 하면, 당첨복권이 될 확률은 점점 높아질 거라고 믿습니다. 일단 가능성은 둘째치고, 본인에게 즐거우면 대단히 훌륭한 여건입니다. 그 다음부터는 지속성이 관건이겠죠. 재능이 있어도 즐겁지 않으면 말짱 꽝이거든요.
인기 답변
윗분들이 냉철하게 말해서 데이터 출신으로 데이터 분야에 대해서만 말하고 가겠습니당 데이터 생각보다.. 험지에요.. 매일 매일 머가 나오면 바꾸고 씨레벨은 마법사로 착각하고 마법 부려보라고 하고. openai는 마법을 부리고.. 다들 데이터에 대한 환상이 너무 커져서.. 너무 힘들어졌어요..
꼬꼬마 프론트엔드 …
프론트엔드 • 2023년 11월 22일
ㅋㅋㅋㅋ 공감.. 짜흑
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!