Today
-
Yesterday
-
Total
-
  • ✨ [비전공자의 SW개발자 성장기록] 새로운 언어로 Go하기 위한 준비 (~211025)
    | 성장 기록 2021. 10. 25. 20:24

    작년 말부터, 인턴 합격 메일을 확인한 지지난주 토요일까지, 컴퓨터 혹은 노트북을 품에 안고 살아왔다.

    매일은 아니었겠지만 코드를 치지 않은 날이 거의 없었던 것 같다.

     

    그래서 지난 한 주 동안 나름의 refresh를 하며 새로운 학습을 위한 토대를 마련했다.... 쉽게 말해서 적당히 이것저것 찾아보면서 휴식을 좀 취했다.

     

    긴장과 각오

    회사생활 준비

    인턴 생활이 처음인 것은 아니다.

     

    대학교 3학년 겨울방학동안 해양환경공단에서 체험형 인턴을 잠깐 했었다. 하지만 그 때와는 상황이 많이 다르다고 생각했다. "체험형" 인턴이었고, 그저 사회생활을 경험해보고자 하는 마음으로 임했다. 어리기도 했고... 물론 지금도 마음만은 응애다.

     

    이번에는 "채용형" 인턴이기도 하고, 정말 내가 하고 싶은 일을, 정말 가고 싶은 회사에서 할 수 있는 절호의 기회이다. 채용형 인턴은 "배우러 가는" 것이 아닌, 내가 한 사람 몫을 할 수 있는지 쇼앤프루브하는 기간이라고 생각되어 더 긴장되고 대비하게 된다.

     

    그렇다고 특별히 대단한 걸 준비한 건 아니다. (이미 다 봤지만) 일하게 될 회사의 문화와 관련된 영상들을 모두 돌려보고, 깔끔한 옷을 사고, 사회생활과 관련된 책을 읽었다.

    특히 인상적이었던 책은 이것이다.

    <회사가 당신을 채용하지 않는 44가지 이유> - 신시아 샤피로 (2008)

    이 책은 이제 막 자기소개서나 이력서를 준비하는 사람부터, 면접을 앞둔 사람, 사회생활을 막 시작한 사람에게 인사팀의 관점에서 행동지침에 대한 인사이트를 주는 책이다. 내게 해당되는 부분은 마지막 부분 뿐이지만, 내용이 흥미로워 다 읽게 되었다.

     

    기억에 남는 구절이 두 가지 있다.

    - 신입으로 입사하고 첫 6개월이 앞으로의 회사생활을 결정한다.

    - 매일매일이 면접이라는 생각으로 임해라.

     

    이에 대해 여러 이야기들이 있는데, 짧게 세 가지 키워드로 일축된다. 긍정, 스며듦, 헌신

    너무 당연한 키워드지만, 그 의미와 범위에 대한 정의내림을 도와준 고마운 책이다. 비록 2008년 발간된 책으로 꽤 오래된 책이지만, 취업준비생, 이직을 준비하는 직장인, 사회초년생이라면 한 번 쯤 권해주고 싶은 책이다.

     

    Netflix and.... 휴식 ^^

    휴식

    대학생 때는 그렇게 그렇게 LOL을 좋아했는데, 이제는 영 손이 안 간다. 지난 1년간 너무 바빠서 못하다보니..

    컴퓨터 게임은 안 했고, 폰게임은 하스스톤 전장 좀 많이 한 것 같다.

    삶에 치여서 못했던 운동도 다시 시작하고, 서로 바빠서 자주 못 한 데이트도 많이 했다.

    드라마를 좀 많이 봤다. 마이네임 정주행하고, (K배우님 왜 그러셨어요..)갯마을 차차차 완결 보고, 지금은 모범형사 보고있다.

     

    Go Golang Go언어

    학습 준비

    회사에서 다루게 될, 아직은 낯선 언어 Golang의 기초를 학습했다.

    (처음 써봤는데 너무 좋은)WSL2를 세팅하며 Go 언어 환경설정에 꼬박 하루가 걸렸고, 공식 문서 Effective Go를 정주행하고, 프로그래머스의 30분 Go, 예제로 배우는 Go 프로그래밍의 Go 기초와 활용을 학습했다.

    2021.10.21 - [| 프로그래밍 분야/Go] - 🏃‍♂️ Golang 학습에 유용한 사이트 정리

     

    🏃‍♂️ Golang 학습에 유용한 사이트 정리

    서버 개발에 Go 언어가 점점 각광받고 있지만, 다른 언어들에 비해 reference가 적어서 처음 접근하기 어려운 느낌이 있어요 제가 Go 를 학습하며 도움을 얻었던 사이트를 정리해볼게요 예제로 배우

    meoru-tech.tistory.com

     

    Go를 써보고 느낀 점

    지금까지 꽤 많은 언어를 다뤄봤다. 한글, 영어, C, C++, Java, Kotlin, JS, Python 등등... 번외로 쉘스크립트VBA, 마크다운, 마크업 언어까지.

    콕 집어 말하기는 어렵지만, 그 어떤 언어와도 패러다임 자체가 다르다는 느낌을 받았다.

    C는 절차지향 패러다임을 따른다. OOP 설계가 불가능한 건 아니지만, 특수한 경우에 한정되며 비효율적이다. C++은 절차지향과 객체지향의 그 중간 어디쯤.

    Java는 객체지향을, Kotlin, JS는 함수형 프로그래밍을 지향한다. 물론 난 함수형 프로그래밍을 아직 잘 모르겠다.

     

    그런데 Go는... 뭐랄까..

    언어 차원에서 절차지향, 객체지향, 함수형 프로그래밍 모두 지원한다. 뭘 좋아할지 모르겠어서 일단 다 준비했어 느낌이랄까? 그렇다고 어느 하나가 비효율적인 것도 아니다. 그래서 그런지 오히려 어떤 패러다임으로 프로그램을 짜 나가야 할지 막막한 느낌...?

    또한 다른 언어보다 간소하면서도 서버, 동기화 처리, TDD에 대한 언어 차원의 지원이 많다. 패키지 관리 방식도 독특하다.

     

    실제 내 프로젝트도 만들어 보고, 각종 레거시를 참고하며 애매한 부분에 대해 더 공부해나가야겠다.

     

    이뤄온 것

    • C/C++/Java/Python/Kotlin/Vue.js
    • Spring/Spring Boot
    • MySQL
    • Android
    • GoLang 기초
    • "함께 일하고 싶은 신입사원"에 대한 고민

     

    이뤄낼 것

    • GoLang 활용
    • CS공부 및 정리
sangilyoon.dev@gmail.com