Sunullo
146
2021-02-15 21:06:25
21
2765

고급개발자로 칠 때, 프론트엔드 vs 백엔드 둘 중 어느 것의 난이도가 더 높을까요?


초보 프로그래머입니다.

물론,본인이 끌리는 쪽으로 가기 마련이겠지만


고급개발자 컷이라는 것이 존재한다 칠때,

1) 프론트엔드 vs 백엔드 중에 무엇이 더 지능이 뛰어나야 하는지 궁금합니다.


2) 평범한 지능인데도 노력으로 가능할까요?


4
  • 댓글 21

  • John Suhr
    4k
    2021-02-15 21:10:28

    대부분의 웹 개발자는 회사원과 진배없습니다. 지능이 높냐 낮냐가 아니라 얼마나 꼼꼼하냐가 중요한 것 같습니다.

  • fender
    21k
    2021-02-15 21:10:33

    둘 다 파면 파는 만큼 어렵다고 생각합니다.

  • moonti
    3k
    2021-02-15 21:19:50

    네 대부분은 누구나 할수 있는 수준의 개발만 함니다

  • pooq
    7k
    2021-02-15 22:43:33

    백엔드 : 공부 열심히해서 노하우가 쌓이면 왠만한 고수의 경지에 도달 가능

    프론트엔드 : 색감이나 공간감등 디자인적 감각이 있어야 가능

  • 기획출신아키텍트
    491
    2021-02-16 01:56:54

    fender 님 말대로 파는만큼 어려운데

    백엔드는 파고 있는 사람들이 상대적으로 많고. 프론트엔드는 파고 있는 사람이 상대적으로 적어요.

    프론트엔드에 대한 시장의 요구치가 백엔드보다 얕기 때문인 것 같아요.

    장갑시장(프론트엔드)과 의복시장(백엔드)같은 느낌이죠. 퀄리티 올리려면 뭐 장갑이든 의복이든 상관이 없는데 비싼 장갑 요구하는 고객이 있어야 더 신나겠죠?

    한국 벗어나면 좀 나아지고 UX 제대로 공부하시면 또 영역이 달라집니다만 전 프론트엔드에 큰 관심이 없어서 디테일하게는 공부 안해봤어요.

  • 파이썬초보일대일
    393
    2021-02-16 02:04:32

    프론트에 디자인적 감각이 필요하다는분들은 솔직히 이해가 잘 안가네요... 물론 꼼꼼한 사람이어야 유리한건 맞는데 디자인적 감각이 필요하다고 느껴본적은 없고.. 어차피 프론트가 디자인까지 해야하는 개막장 회사 아니면 디자이너 따로 있을텐데 말이죠. 프론트는 주어진 환경에서 그 구조랑 흐름을 얼마나 잘 이해하고 배치를 잘하냐의 싸움이지 막 알고리즘적 사고를 깊게 요구하지는 않습니다. 코드가 쓰레기일지언정 어떻게든 돌릴 수도 있구요

    저는 백엔드가 압도적으로 어렵다고봅니다. 프론트는 약간 기능공 느낌이면 백엔드가 기술자 느낌이고 유행하는 기술(컨테이너, 쿠버네티스 등등... 앞으로는 cdn같은것도?) 아키텍쳐 깔고 하려면 확실히 백엔드가 더 어렵죠.

  • 파이썬초보일대일
    393
    2021-02-16 02:05:30

    평범한 정도의 지능이라고 자부하시면 노력으로 무조건 가능하긴한데 간혹가다 진짜 코드랑 죽어도안맞는사람들이 있어요. 분명 컴공이라고 나왔는데 css 하나 이해 못해서 컨테이너하나를 1주일 붙잡는 그런 사람이 간혹 있습니다. 이건 냉정하게 말해서 재능없는거죠


  • 삼식이
    1k
    2021-02-16 03:21:57

    난이도 문제보다 백앤드가 문제 생겼을때 스트레스가 더 크죠.

    잘못하면 데이터 문제가 생길수도 있고 데이터 교정까지 해야될수 있으니깐요.

    뭐 프론트는 에러나면 소스만 고치면 되니 손이 덜가죠 ㅎ

  • 아이티소년
    290
    2021-02-16 09:15:38

    우리회사 백엔드 보면 와 나는 프론트로 전향해야되나 느낌

  • 뀨엉뀨엉
    325
    2021-02-16 11:02:12

    백엔드 쪽에 한표넣습니다.

  • 7이닝
    889
    2021-02-16 11:08:55

    개발 난이도는 분야가 다르기 때문에 논하기 어렵죠


    다만,

    코드에 대한 스트레스는 백엔드가 좀 더 있습니다. 

    프론트 코드도 꽤 스트레스 있습니다만 이것보단  고객 스트레스가 유독 심합니다.

    일단 유저/클라이언트는 UI 문제부터 삼으니깐요


    그리고 프론트엔드 개발자가 디자인적 감각은 있으면 플러스지만 필수는 아닙니다.

    디자이너 혹은 기획에게 맡겨야죠. 보통 디자인 직군이 없어서 개발자가 하는 경우 땜에 그런듯

  • 무명소졸
    6k
    2021-02-16 12:26:34

    도대체 이런 게 왜 궁금할까 !!!?;


  • 초보.
    4k
    2021-02-16 14:10:34
  • 야근냥
    350
    2021-02-16 17:37:08

    전 양단의 고충과 다른생각들을 알게되서 질문 좋았는데요 ㅎㅎ

  • Ananya
    869
    2021-02-17 11:33:35 작성 2021-02-17 12:28:02 수정됨

    고급개발자는 아니지만 둘 다 겪어본 입장에서 기술적인 부분이야 둘 다 끝없이 공부해야 하는 부분일거고요...

    갠적으로 @7이닝 님 말씀이 공감이 됩니다.

    프론트 개발자가 가장 스트레스 받는 순간은 보통 아마 데모할 때 일 겁니다. 욕받이 무녀 되는 느낌이죠. 고객의 무리한 요구나 심기 불편한 고객의 꼬투리잡기로 인해 작업분을 다 엎고 새로 짜야하고 이런 경우가 많았습니다. 그리고 많은 좋은 도구들이 나왔지만 자동화된 테스트코드의 작성 시 프론트엔드쪽 작업이 결코 쉽지 않았어요.

    백엔드 개발자가 가장 스트레스 받는 순간은 뭐... 내 코드의 오류로 인한 운영서버 장애죠. 일단 한 번 문제가 터졌을 때 그게 원인이 백엔드인 경우가 많고(프론트는 일단 보이니까, 문제가 dev/stage에서 드러나지만 백엔드 오류는 좀 심한 경우 스테이지에서도 못 잡고 운영에서 부하가 심하게 오면 나는 경우도 있으니....), 그리고 문제의 심각성 자체가 훨씬 클 확률도 상대적으로 높습니다.

    개인적으로는 백엔드 개발이 묵직하게 한방씩 때리는게 아파서 일 하면서 백엔드 쪽 일에서 스트레를 조금 더 받았던 거 같습니다. 데모는 일정이 있지만 장애는 예고하고 오는 게 아니니까요. 하지만 사람 스트레스에 대한 내성이 낮다면 프론트쪽 스트레스가 더 심할 가능성도 높다고 보여요.  

  • Sunullo
    146
    2021-02-20 01:41:06

    @Ananya 백엔드 개발자를 비전공자가 주니어로 시작할 수 있나요?

  • crazygun22
    729
    2021-02-22 08:59:58 작성 2021-02-22 09:07:55 수정됨

    정말 잘하는 개발자는 백엔드, 프론트 엔드 둘다 그냥 개발 다 함, 이런 도메인에 신경 안 씀

    잘하는 개발자는 각각 1~2달 이면 마스터 합니다.

    재능 없는 개발자는 , 1년, 그 이상 해도 감 못잡아요.



  • Sunullo
    146
    2021-02-22 09:54:23

    crazygun22 // 님이 말하는 잘하는 개발자 되려면 어떤거 공부 해야돼요? 언어? 프레임워크? 알고리즘?

  • crazygun22
    729
    2021-02-22 13:23:44

    Sunullo//


    1.  CS에  정통해야 합니다. 단순히 이론을 배우는 것으로 그치는게 아니라, 아래와 같이 공부하셔야 합니다.

     - 기본 알고리즘(sort, linked list, search ...) 등 모두 vainilla code 직접  구현 해보셔야합니다.

    - 소켓, 어셈블러, C, 커널 같은 저수준에서 다 구현 해보셔야 합니다.

    - 식사하는 철학자 문제 같은 것도 다 구현 해보시구요.

    - 멀티스레드에 의한 공유 메모리 침범 등등등...


    2. 프레임워크, 언어는 미리 별도의 시간을 내어 공부하는게 아니라, PJT 할 때 그 기술이 필요하면 그 때 찾아가면서 만들어 가면 됩니다. 이런 것들을 미리 선행 학습하지 않습니다. 시간 낭비 입니다.


    3. 영어는 논문까지는 아니더라도, 스택 오버플로는 능숙하게 봐야 합니다.


    4. 집중하고, 끈기가 있어야 합니다. 어떤 어려운 알고리즘 이라도, 그것이 풀릴 때 까지 몇달이고 골돌히 집중하는 생각하여 결국 풀어 낼수 있는 능력이 필요 합니다.


    5. 꾸준히 공부할 수 있는, 자기 관리능력이 필요 합니다.  CS 지식 외에 스티브 멕코넬, 디자인 패턴, TDD 등등  좋은 책들이 많습니다. 몇 년을 꾸준히 보셔야 합니다. 


    6. 꾸준히 운동 하셔야, 즉 건강 해야 합니다. 아침밥도 잘 드시고, 일찍 자고, 밤에 게임 하지 않고.. 주기적으로 운동하고, 해야 합니다. 야근 하고, 밤에 잠 안자고.., 머리가 멍한데 그 다음날 좋은 코드가 나올리가 없죠.  칼퇴는 기본 입니다.


    7. 코딩의 질이 중요 합니다., 무작정 빨리, 많이 코딩하기 보다는 .. 좋은 코드를 만들기 위해 깊이 고민하고, 디자인 패턴, 모듈화, 클린 코드 등등, 일정에 급급해 하며, 단순히 동작만 하면 된다는 생각으로 개발하다보면 실력이 늘지 않습니다.


    8. 위의 1~7까지는 그나마 지금 부터라도 할 수 있는 노력에 해당하는 것입니다.

    수학적 사고 능력, 즉 문제를 논리, 수학으로 풀어 낼 수 있는 능력 이 필요합니다. 즉 수학을 잘해야 합니다. 초중고 때 수학공부를 게을리 했다면 잘하는 개발자가 되기는 어렵습니다. 이제 다 큰 성인이 되어서 개발자게 되겠다고 마음먹고, 이제 와서 수학공부 한다면 늦습니다. 대부분 25 중반 이후에는  수학 공부해도 논리적인 사고 능력은 향샹시키기 어렵기 때문이죠. 이런 분들은 지금 부터 열심히 한다고 해서 잘하는 개발자가 되기는 어렵습니다.


    이상 제가 생각 이었습니다.

  • zizhzhzo
    87
    2021-02-22 20:18:37
    마치 의사 변호가 뭐가 더 지능 뛰어나야 하나요 같은 질문처럼 보이는건 왜일까...

    그럼 개발하면 지능 높고 요리하면 지능 낮은가요? 별 이상한 질문이네요...
  • Sunullo
    146
    2021-02-23 02:35:49

    crazygun22  // 

    와..상세하고 콕 찝어 답변해주신 점 감사합니다ㅎㅎ

    언어와 프레임워크 공부시간 따로 할애하지말고,

    알고리즘과 구현에 중점으로 공부하라는 포인트를 찝어주신게 전략적인거 같네요


    근데 8번이..젤 문제이군요 

  • 로그인을 하시면 댓글을 등록할 수 있습니다.