본문 바로가기
미국 개발자/HOOTips

[HOO's Information] 프로그래밍 공부하는 방법 #02 - 프로그래머와 영어

by Henry Cho 2021. 8. 12.
728x90

프로그래밍 공부하는 방법 #02

프로그래머에게 영어는 필수불가결이다.


 

#. 프로그래밍과 영어

현직에서 프로그래머로 일을 하고 있는 한국 Bro들과 가끔씩 안부차 이야기를 나누곤 한다. 사실상 잔소리하려고 연락한 셈이다. 코로나가 심해지기 전에 직접 만나서 이야기를 나누거나 전화를 이야기를 나누다 보면 생각지도 못한 고민거리나 질문거리가 생긴다. 그중에 하나가 바로 영어이다.

비전공자이든 전공자이든 경력자든 신입이든 상관없이 프로그래밍을 하기 위해서는 영어를 할 줄 알아야 한다. 물론 필자의 경우 해외에서 공부를 해왔기에 프로그래머는 영어를 해야 한다는 걸 모르고 있었다. 왜냐하면 주변 친구들이나 프로그래머들은 영어가 모국어이기 때문이다. 하지만 영어가 모국어가 아니거나 잘하지 못한다면 영어를 꼭 알아야 하는 직업 중에 하나가 바로 프로그래머이다.

프로그래밍에서 요구되는 영어의 기준은 언어적 소통이나 대화를 잘하거나 전문 비즈니스 영어를 의미하지 않는다. 물론 완벽히 잘하면 좋은 건 사실이다. 하지만 국내에서 프로그래머로 일한다는 기준에서 프로그래밍을 위한 영어를 한다면 최소한 다양한 자료들을 읽고 판단할 수 있어야 한다.

 

#. 프로그래밍 언어는 영어 기반 언어이다.

거두절미하고 프로그래머가 영어를 해야 한다는 점은 프로그래밍 언어 자체가 영어 기반으로 만들어졌기 때문이다. 물론 프로그래밍 언어 중에서는 영어 기반으로 만들어지지 않은 언어들도 존재한다. 예를 들면 한글로 만들어진 프로그래밍 언어도 있다. 하지만 실제로 대중적으로 많이 사용되고 있는 언어는 영어 기반이다. 언어 자체가 영어인데 영어를 모른다면 당연히 공부하는데 어려움이 있다. 우선 프로그래밍 언어 자체의 이해도도 영어를 아냐 모르냐에 따라 달라진다. 영어 기반으로 만들어진 프로그래밍 언어의 용어들과 기능들은 단어의 뜻을 유추하여 충분히 이해가 가능하다. 인공지능이 아닌 이상 프로그래머는 모든 기능과 용어를 기억하기 힘들다. 하지만 대략적인 의미를 용어를 보고 유추하여 사용이 가능하다. 또한 한국말로 직번역된 용어들은 프로그래밍 언어의 이해도도 떨어뜨리며 개발자 간의 의사소통에 방해가 된다. 우리가 BTS를 부를 때 BTS 또는 방탄소년단이라고 부른다. 미국에 있는 친구들 중에서도 BTS를 좋아하는 팬이라면 방탄소년단이라는 단어의 의미를 알고 있다. 방탄소년단의 각각의 단어들을 이해하지 못하더라도 방탄소년단이 BTS를 의미한다는 건 BTS를 좋아하는 미국 친구들은 안다. 문제는 프로그래밍 언어를 한국적 표현으로 바꿀 때 고유 표현 방식을 그대로 사용하지 않는다는 것이다.

물론 프로그래밍에서 모든 표현을 한국식 표현으로 바꾸지는 않는다. 예를 들면 Object Oriented Programming을 한국말로 바꾸어 객체지향언어라고 부르지만 Compile과 같은 부분은 그냥 컴파일 또는 컴파일러라고 부른다. 한국식으로 표현이 가능한 부분에 대해서는 한국식 표현과 영어식 표현을 같이 알려주고 한국식 표현으로 바뀌는 것이 더 헷갈릴 경우 영어식 표현으로 그대로 사용하고 있다. 영어를 어느 정도 아는 사람은 영어와 한국식 표현을 혼용해서 배우는 게 더 이해가 빠를지도 모른다. 하지만 영어를 잘 못하는 프로그래머라면 더 고통스러울 뿐이다. 영어식 표현이 이해되지 않는다면 한국식 표현을 봐야 하고 한국식 표현을 보더라도 이해가 되지 않는다면 해당 단어들에 대해서 찾아보고 이해해야 한다. 또한 특정 용어는 영어식 표현으로 또 다른 용어는 한국식 표현으로 설명이 되어 있다면 영어를 못하는 사람에게는 설명 자체가 문제일 수 있다.

 

#. 소스 코드 및 프로그래밍 자료의 대부분은 영어이다.

프로그래밍에 대한 관심과 수요가 많아지다보니 한국어로 작성된 프로그래밍 정보나 소스 코드 설명들이 많아진 건 사실이다. 하지만 필자는 아직도 프로그래밍 부분에 대해서 정보 검색을 할 때에는 대부분 영어 자료를 참고한다. 필자가 외국에 살아서 한국 자료를 잘 못 찾는 걸 수도 있다. 또는 필자의 분야만와 같이 아직 정보가 많지 않은 경우에 해당되는 내용일 수도 있다. 하지만 전체적인 프로그래밍 자료에 대한 규모에서만 생각해보더라도 아무리 한국에 프로그래밍에 대한 관심이 많아졌더라도 영어 자료가 더 많을 수밖에 없다. 자료의 양이 많다는 건 개발에 필요한 정보를 찾기 수월하다는 것을 의미한다. 개발에 필요한 자료를 하나에서 두 개밖에 못 찾을 때와 달리 영어로 찾으면 수백 가지가 나올 수 있다.

물론 프로그래밍에 대해서 영어 자료만 독보적으로 많은 건 아니다. 중국어로 작성된 자료도 많고 스페인어로 작성된 자료도 많다. 필자의 경우도 필요한 정보를 찾기 어려울 때에는 영어, 중국어, 한국어, 스페인어 등으로 검색하고 공부를 하곤 한다. 따라서 본인이 영어를 말고 중국어나 스페인어와 같이 또 다른 언어이지만 프로그래밍 자료가 검색이 유용한 언어가 있다면 활용하는 것이 좋다. 하지만 소스코드가 많이 검색이 가능한 다른 언어를 하지 못하고 영어도 잘 하지 못한다면 영어를 우선적으로 알아두는 게 도움이 된다.

 

#. 프로그래머 일은 영어로 시작해서 영어로 끝난다.

국내 있는 기업에서만 일을 하고 영어를 절대 쓸 일이 없다면 해당사항이 없을 수도 있다. 하지만 조금이라도 외국과 소통이 이루어져야 한다면 프로그래머에게는 영어가 우선적으로 되어야 한다. 모든 다국적 프로그래밍 관련 미팅은 대부분 영어로 이루어진다. 왜냐하면 다른 개발자들도 기본적으로 알고 있는 언어가 영어이기 때문이다. 프로그래머들은 어느 직종보다도 미팅이 중요하고 미팅을 많이 하는 직업 중 하나이다. 프로그램 개발이나 프로젝트를 혼자서 진행한다면 문제가 없다. 왜냐하면 본인이 개발하는 내용을 다 이해하고 있기에 굳이 다른 사람에게 설명해줄 필요가 없기 때문이다. 하지만 대부분의 프로그래머 일은 협력으로 이루어진다. 프로그래머가 아니더라도 기획자나 디자이너 등과도 본인이 작성하고 있는 코드에 대해서 또는 개발한 프로그램에 대해서 설명을 해야 한다. 결국 수많은 미팅을 하기 위해서는 영어에 대해서 어느 정도 알아야 한다.

 

#. 프로그래머에게 필요한 영어 공부란

Bro들과 이야기를 나누다보면 프로그래밍 공부를 하거나 회사에서 일하기도 힘든데 영어 공부를 하려니 막막하다고 한다. 한국은 유치원 때부터 영어 공부를 해오는데도 영어 공부가 막막한 이유는 프로그래머에게 필요한 영어 공부를 하려기 보다는 그저 전반적인 영어 공부를 하려다 보니 막막한 것이다. 특정 기술이나 자격증처럼 갑자기 영어를 잘하고 싶다고 해서 영어를 잘할 순 없다. 뇌가 굳어있지 않고 시간적 여유가 많다면 영어를 완벽히 공부하는 것은 좋은 방법이다. 하지만 현실적으로 시간은 없고 뇌는 굳어있다. 그렇다 보니 프로그래밍 실력 향상을 위해 막상 영어 공부를 하려고 해도 시간이 규칙적으로 나지가 않고 어떤 방법으로 시작해야 될지 막막하다. 

우선 필자는 회사를 다니고 있는 신입 개발자라면 퇴근 후 영어 학원을 가지 말라고 하고 싶다. 필자와 멘토링을 하는 Bro 중에서는 영어가 부족해서 항상 프로그램 개발에 있어서 골칫거리로 작용하다보니 퇴근 후 영어 학원을 다닌다고 이야기를 했다. 영어 학원을 가는 것은 나쁘지 않다. 한국만큼 체계적이고 효율적인 공부 방법을 제시하는 학원이 전 세계적으로 많지 않다. 하지만 현실적으로 퇴근 후 학원을 간다는 게 어려운 일이다. 체력적이나 정신적으로 힘들다는 부분이 필자도 공감하기 때문에 퇴근 후 영어 학원까지 다니며 프로그래밍에 필요한 영어 공부를 할 필요는 없다고 생각한다. 기본적으로 영어에 대해서 지속적으로 공부를 해왔고, 한국 직장인들의 필수 자격증인 토익을 본 적이 있다면 집에서도 프로그래밍 영어 공부가 가능하다.

 

#. 많은 자료를 일고 정리하는 것이 좋다.

최소한 영어 Reading이 가능하다면 학원을 다니지 않고도 집에서 꾸준한 공부 방법으로 프로그래밍에 필요한 영어 공부가 가능하다. 간단하면서도 어려운 일이 자신의 분야에 대한 영어 자료 또는 소스코드들을 살펴보고 이해하는 것이다. 처음에 읽다보면 영어로 작성된 프로그래밍 용어 자체가 어려울 수도 있고 모르는 단어 자체가 있어서 문장 이해가 되지 않을 수도 있다. 하지만 자신의 분야와 관련된 프로그래밍 자료들은 이해하는데 훨씬 수월하다. 왜냐하면 기본적으로 많이 봐온 표현들이나 예제 코드들만 보더라도 영어 설명이 이해가 잘 되지 않더라도 어떤 내용인지 짐작이 가능하기 때문이다. 거기에다가 추가적으로 다양한 관련 프로그래밍 자료들을 살펴보면 몰랐던 부분도 알 수 있다는 점에서 영어 공부와 프로그래밍 공부 둘 다 하는 일석이조의 효과를 볼 수 있다.

필자가 강조하고 싶은 점은 위의 방법을 소개하는 것보다 시간 투자를 많이해 가며 단기간에 프로그래밍을 위한 영어 공부를 할 생각을 버려야 한다는 것이다. 장기적인 Plan으로 지치지 않고 공부해 나가는 것이 중요하다. 비전공자인데 신입 개발자로 취업해서 영어 자료에서 멘붕이 온 사람들, 전공자인데 영어 공부를 잘하지 않았던 사람들, 그냥 영어가 싫었던 사람들에게는 단기적으로 짧고 굵게 영어를 어느 정도 해서 프로그래밍에 방해가 되지 않았으면 좋겠다는 마음을 이해한다. 하지만 영어를 하는 주요 목적은 프로그래밍을 잘하기 위해서이다. 따라서 프로그래밍이나 자신의 일에 집중을 더 해야 하지 영어가 문제가 된다고 단기간에 시간적 투자를 많이 해서는 안된다. 영어는 취업 전에 프로그래머가 된다고 생각했을 때 부족하다면 미리 했어야 하는 게 부정할 수 없는 사실이다. 하지만 후회하기에는 이미 늦었기에 장기간으로 생각하고 프로그래밍 일과 병행해서 영어 실력을 차츰 향상하는 것이 중요하다. 마지막으로 Bro 중에 한 명도 필자의 이야기를 듣고 장기적으로 공부를 했더니 이메일로 영어 소통과 프로그래밍 실력 향상 둘 다를 가져갈 수 있게 되었다.


# In conculsion, 3줄 요약

1. 프로그래머에게는 영어는 필수이다.

2. 프로그래밍 언어는 영어 기반이며 프로그래밍 영어 자료는 많고 프로그래밍 미팅은 영어로 한다.

3. 이미 취업을 했거나 영어 공부하기 늦었다면, 장기 계획을 가지고 프로그래밍 일과 병행하여 공부해야 한다.


 

728x90

댓글