개발자

3년차 개발자, 앞으로의 미래가 고민입니다.

2022년 10월 17일조회 2,366

우선 간략히 제 소개를 드리자면 졸업 전 8개월 정도 중소기업에서 C#개발자로 시작하였고, 2년 전 우연한 기회에 Flutter 개발자가 되었습니다. 그 이후로 계속 스타트업~중소기업을 다니며 아직도 Flutter 개발자로 일하고 있습니다. 현시점에 고민인 점은 크게 두가지 입니다. 첫째로는 Flutter만으로 앞으로도 이직할 수 있을까 하는 것이고, 두번째는 연차만 쌓인 사람이 아닌 실력이 쌓인 사람이 되고싶다는 점입니다. Flutter 개발을 하다보니, 아무래도 네이티브를 할 줄 아는 편이 좋겠다는 생각이 듭니다. 만약 퇴근 후 작은 사이드프로젝트를 한다면 네이티브쪽을 공부하는 것이 좋을지, Flutter를 더 깊게 공부하는 것이 좋을지 고민이 됩니다. 또 근본적으로 이젠 더이상 마냥 신입이 아니라는 생각에 개발실력을 키우고 싶다는 생각이 듭니다. 그동안 다녔던 (그리고 현재 다니고 있는) 회사의 특성상 함께 일하는 개발자가 많지 않아 거의 혼자 일을 해왔습니다. 그래서인지 이게 잘 하고 있는 것인지에 대한 의문도 들고, 다른 개발자들은 어떻게 실력을 키우나 하는 궁금증이 들었습니다. 저와 같은 고민을 하고 계시거나, 이미 이 시간을 지나보낸 분들의 의견이 궁금합니다.

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

답변 2

서진호님의 프로필 사진

안녕하세요? 서진호입니다. 주신 질문에 대해 저의 의견을 말씀드리자면, Flutter 든 native app을 만들기 위한 ios(swift)/android(java) 언어를 더 열심히 해서 사이드 프로젝트를 만드는 것도 좋지만, 이미 사이드 프로젝트를 할 필요없이 회사에서 그 업무를 맡고 계시기 때문에 의미가 별로 없다고 보아집니다. 따라서 저는 조금더 전문적인 소프트웨어 엔지니어가 되기 원하신다면, 소프트웨어 디자인 패턴을 공부하시는 것이 어떨까 조언해 드립니다. https://ko.wikipedia.org/wiki/%EB%94%94%EC%9E%90%EC%9D%B8_%ED%8C%A8%ED%84%B4_(%EC%B1%85) 《디자인 패턴》은 소프트웨어 설계에 있어 공통된 문제들에 대한 표준적인 해법과 작명법에 대해 깊게 공부할 수 있습니다. 참고로 디자인 패턴에는 생성 패턴, 구조 패턴, 행동 패턴 등이 있습니다. 플러터도 알고 보면 (모바일) 웹 프레임워크를 가지고 있으며, MVP/MVVM 모델로 구성되어 있습니다. 따라서 이러한 프레임워크의 근원적인 소프트웨어 패턴을 배운다면 언어 뿐만 아니라 프레임워크, 네트워킹, 데이터베이스 등 좀더 확장성을 가지고 구조화할 수 있습니다. 필요하다면 C# 이나 JAVA, 그리고 SWIFT 같은 언어도 배울 수 있으며, 엔터프라이즈 패턴과 현재 클라우드 서비스에서 많이 사용하고 있는 마이크로서비스 아키텍처까지 공부할 수 있습니다. 또한 코드들을 재활용하는 데 용이하는 데 사용하도록 '리팩토링'도 배울 수 있습니다. https://ko.wikipedia.org/wiki/%EB%A6%AC%ED%8C%A9%ED%84%B0%EB%A7%81#:~:text=%EB%A6%AC%ED%8C%A9%ED%84%B0%EB%A7%81(refactoring)%EC%9D%80%20%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4%20%EA%B3%B5%ED%95%99,%EC%B6%94%EA%B0%80%ED%95%98%EB%8A%94%20%ED%96%89%EC%9C%84%EB%8A%94%20%EC%95%84%EB%8B%88%EB%8B%A4. 관련된 책들은 위의 링크에 보시면 자세히 있습니다. 만일 혼자 하시는 것이 부담이 되신다면, 관련 개발자 커뮤니티나 스터디 그룹에 참가하시거나 또는 멤버를 모아서 리드해 보시는 것이 어떨가 싶습니다. 저도 그 정도 경력때 그렇게 스터디를 했고, 많은 도메인 SI 프로젝트에 적응시켰고 나중에 소프트웨어 아키텍처로 발전하게 되었습니다. 또한 3년차 이시니 이제 혼자서 개발하는 것도 있지만, 멀티 소프트웨어 개발자들이 들어 올 것으로 가정하고 팀 이슈 관리 및 깃허브 같은 소프트웨어 형상 관리 같은 스킬도 배워두시면 좋을 것 같습니다. 많은 소프트웨어 직원들이 있는 곳에서는 기본적으로 이러한 기술들을 사용하고 있기 때문입니다. 그럼 도움이 되었으면 좋겠습니다. 서진호 올림

profile picture

익명

작성자

2022년 10월 20일

답변 감사합니다!😊

서진호님의 프로필 사진

서진호

HPC&AI Presales Consultant at HPE2022년 10월 20일

글 적자마자 댓글을 주셔서요! 또 다른 측면은 알고리즘과 데이터 구조와 같은 컴퓨터 과학에서 기본적으로 사용되는 것을 공부하시기를 권장합니다. 그렇게 된다면 운영체제와 메모리, 컴파일러 등등 더욱 더 효율적인 프로그래밍 할 수 있는 방법을 터득을 할 수 있습니다. 감사합니다.

노수진님의 프로필 사진

저는 반대로 네이티브 개발자 입장에서도 비슷한 고민을 가지고 있습니다. Flutter를 쓰는 회사들이 점점 많아지고 있습니다! 잘 들여다보면 회사의 특성 차이가 있습니다. 통계를 내본건 아니지만 저의 느낌으로는 모바일 앱이 사업에 보완적 역할을 하는 곳에서는 Flutter 같은 하이브리드를 많이 도입하고 있습니다. 특히 제 눈에 많이 띄는건 핀테크 분야에요. 또는 이커머스나 유틸리티 등등요. 반면에 앱의 사용자 경험 그 자체가 중요한 사업이라면 네이티브 앱만이 줄 수 있는 최적화된 경험을 타협하긴 힘들겠죠. 그래서 내가 앞으로 어떤 분야, 어떤 회사에서 일하고 싶은지도 생각해보시면 좋을거 같습니다. 개인적인 경험이지만 주위에 잘하는 개발자들이 많을 때 나도 더 빨리 성장했고, 내가 부족한게 뭔지 깨닫고 자극을 받을 수 있었어요. 혼자만 하다보면 내가 우물 안 개구리라는걸 까먹게 되거든요. 아래 서진호님의 답변대로 스터디 그룹에 참여하는 것과 디자인 패턴 공부 강력 추천합니다. 사이드 프로젝트도 추천합니다. 플러터든 네이티브든 본인이 해보고 싶은걸로요. 구글, 애플이 1년마다 OS와 언어에 새로운 기능을 추가하는데 회사 프로젝트에서는 마음대로 써볼 수 없으니 사이드 프로젝트 하나 있으면 나만의 실험실처럼 새로운 API, 기능 등등 마음껏 써볼 수 있어서 오랫동안 좋은 자산으로 써먹을 수 있는거 같아요. 미리 써보면 나중에 회사에서 도입하려고 할 때 나는 경험자니까 프로젝트를 리딩해볼 기회가 생길수도 있고요. 여러모로 유용합니다.

profile picture

익명

작성자

2022년 10월 27일

좋은 답변 감사합니다!

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

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

또는

이미 회원이신가요?

목록으로

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

새로운 질문 올리기

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