문득 드는 짧은 생각들을 적어봅니다.
개발자를 직업으로 가지면서 한 번은 들어봤을 법한 이야기가 있습니다. “개발자는 죽을 때까지 공부해야 해”라는 말입니다.
그만큼 개발자를 직업으로 선택했다면 하나에 대해서만 알아야 하는 것이 아니고 복합적으로 많은 것들을 알기 위해서 공부를 해야 한다고 생각합니다.
또한 자고 일어나면 생겨나는 ‘신기술’이나 ‘프레임워크나 라이브러리의 새로운 버전'에 대한 대처까지 수많은 정보들이 쏟아지고 있습니다.
그렇다면 이런 수많은 정보를 습득하기 위해 "난 개발자를 직업으로 선택한 이상 정말 죽을 때까지 공부만 해야 하는 것일까?"라는 생각을 해보게 됩니다.
저는 이에 대해 '하나의 근간이 되는 것'을 가지고 있어야 한다고 생각합니다.
'근간(根幹)'의 사전적 의미는 뿌리와 줄기를 의미하면서도 사물의 바탕이나 중심이 되는 중요한 말로 해석이 됩니다.
무언가를 시작하고자 할때 이러한 중심이 되는 중요한 무언가가 필요하다고 생각을 합니다.
개발 언어를 봤을때에도 동떨어진 신개념의 개발언어는 아직 느껴보지 못했던 거 같습니다.
학부 때 기본적으로 배웠던 C언어나 Java언어만 봐도 C언어는 이를 기반으로 파생된 C++이나 C#이 생겨났고, Java 언어에서는 이를 기반으로 파생된 Kotlin과 같이 기본적인 언어의 근간을 두고 새로운 언어가 생겨났다고 생각합니다.
또한 개발툴의 경우에도 저는 Eclipse의 Luna 버전으로 시작해서 STS를 거쳐 IntelliJ를 사용하는데 큰 불편함을 느껴보지 못한 것처럼 툴에 대한 기본 근간이 흔들리는 경우는 없었던 거 같습니다.
그렇듯 하나의 언어나 개발툴에 대한 하나의 근간을 둔다면, 새로운 언어를 접하게 되었을 때 동떨어지는 새로운 것이 아닐 거 거라는 생각이 듭니다. 또한 이런말도 있습니다. "하나의 언어를 할 줄 안다면 다른 언어를 배우기도 어렵지 않다"라는 이야기처럼 내가 새로운 언어를 배우게 될 때 기본이 되는 언어나 툴이 있다면 습득하는 능력의 차이는 크다고 생각합니다.
그래서 이러한 근간을 두기 위해서 하나의 언어의 깊이가 필요하다고 생각합니다.
예를 들면 선택한 언어의 자료구조, 절차지향/객체지향, 변수나 데이터 타입의 구조, 아키텍처, 데이터 처리의 흐름, 접근제한자, 인터페이스와 구현체, 상속, 컴파일, 인터프리터 등등 기본적인 흐름에 대해 깊이를 두고 있다면 새로운 것을 접할 때에 좀 더 스트레스도 덜 받고 학습 속도도 빨라지지 않을까라는 생각입니다.
그래도 공부를 멈출 수는 없는 것 같습니다...
대신, 하나의 언어나 툴에 깊이 있는 숙련도가 있다면 죽을 때까지 공부하더라도 조금은 응용하여 편해지지 않을까라는 생각이 듭니다.
'취미 생활 > 짧은 생각' 카테고리의 다른 글
[짧은 생각] 경험주의 개발자 (0) | 2023.12.27 |
---|---|
[짧은 생각] 어떤 타입의 사수를 만나보셨나요? (1) | 2023.12.17 |
[짧은 생각] 1년 10개월 블로그를 운영하면서 (0) | 2023.12.07 |
[짧은 생각] AI 성장으로 개발자 직업은 없어질까? (1) | 2023.12.02 |
[짧은 생각] 돌고 돌아 자료구조와 알고리즘이다. (1) | 2023.11.26 |