본문 바로가기
까망 동네/까망

개발자(프로그래머)는 <수학>을 잘해야할까?

by 까망 하르방 2021. 8. 7.
반응형

프로그래밍을 처음 입문해서 계속 공부하다보면

"수학 머리"에 대한 고민을 하게 된다.

앞서 결론부터 말씀드리면 필요할 수도 있고 필요하지 않을 수도 있다.

 

수학적 지식이 필요한 프로그래밍 분야

; 확률 / 통계 / 선형 대수 / 기하학 / 정수론
- 데이터 사이언스(Data Science)
- 게임 프로그래밍
- 컴퓨터 비전
- 암호학 / 블록체인
- 머신러닝 / 인공지능

 

분야외에도 코딩 테스트나 알고리즘을 공부하다보면

"수학을 잘해야 되지 않을까?" 라는 생각을 가지게 된다.

예를 들어, 소수를 구하는 것에도 다양한 방법이 있다.

    2 ~ N-1 까지 나누어지는지 확인

    2 ~ √N 까지 나누어지는지 확인

    에라토스테네스의 체

 

이외에도 복합적인 문제를 풀기 위해 

순열과 조합 / 행렬 90° 회전을 사용하기도 한다.

 

Domain에 따라서는 수학에 대한 우선순위를 낮추거나 두려워할 필요 없다.

때로는 구글링이나 영어가 더 높지 않을까 싶기도 하다. 😒

"수학"에 대한 고민은 공식 / 개념 / 이론 자체보다는 논리력에 대해 진단해야 한다.

① A = 1
② Result = 3
③ Result = A + B
④ B ?  → B = Result - A = 3 - 1
▶ 따라서, B = 2

 

프로그래밍(서비스 개발)에서도 크게 다르지 않다.

① 어떤 문제(상황)가 발생했다. ex) 업무, 장애
② 그 문제로 인해 영향도(Side Effect)가 무엇일까?
③ 그것을 해결하기 위한 방법은 무엇이 있을까?
④ 구현하기 위해서 어떤 언어 / 방식 / 인력이 필요할까?
⑤ 프로그램 유지보수 비용은 얼마일까?

이러한 일련의 고민들이 기업 / 팀 / 개인 단위로 규모는 다르지만
"비즈니스적"으로 혹은 "기술적"으로 공부해야 한다. 

최근에 네이버 웹툰에서 댓글에 답글을 달 수 있는 기능을 추가하였다.

댓글 시스템은 네이버 웹툰 뿐만 아니라 게시판 / 제품 리뷰 등

다양한 곳에서 확인할 수 있고 웹 프로그래밍에서는 빠질 수 없는 기능 중 하나이다.

 

새로 추가된 <답글 기능> 관련해서 일부 사용자측에서는

'투기장(?)이 되지 않을까?' 라는 걱정도 많다.

한편으로는 작가가 독자의 댓글에 답글을 달아줄 수 있는 순기능도 있을 수 있다.

IT 서비스는 사용자에게 기존에 없던 편리성을 제공하는 목적이 있지만

때로는 기획의도와 다른 결과를 나을 수 있다.

개발자라면 기획자와 사용자 사이에서 비즈니스 해석은 물론

기술적인 구현에 있어서 분석과 논리적인 생각을 해야 한다.

- 답글을 펼처보기 식으로 구현?
- 답글이 몇 개 달렸는지 숫자 표시 여부?
- 답글에도 좋아요/싫어요 가능 여부
- 답글 생성되는 시간 표시 시 / 분 / 초

모든 고려사항이 언급된 것은 아니지만 어려운(?) 수학 개념이 필요해 보이지는 않다.

 

마치며

내용을 작성하다보니 프로그래머에게 수학은 필요없다고 말하는 것 같아서

의견을 요약(?) 포스팅을 마치려고 한다.

수학 공식 + 개념 ❌  좋은 개발자 (프로그래머) 

논리력 + 분석력  → 좋은 개발자 (프로그래머) 

 

▶ [BOJ] 1924 2007년

수학적 이론 없이도 충분히 좋은 프로그래머가 될 수 있다.

즉, 종사하는 분야에 따라서 먹고 사는 데 지장 없을 수 있다.

 

프로그래밍을 시작할 때, 수포자라고 마냥 두려워(?)할 필요는 없다.

하지만 수학을 잘해야 좋은 개발자 혹은 더 많은 기술을 접해볼 수 있는 것도 사실이다.

 

Reference

알고리즘 공부 필요성 

알고리즘을 어떻게 공부해야 될까?  

실력쌓기 위한 개발자 공부 

IT 기업의 종류  

(신입) 개발자들이 준비하면 좋은 내용  

IT 국비 교육 받는 것이 좋을까? 독학해보는 것이 좋을까? 

 

반응형

댓글