웹 개발자는 어떤 일을 하나요? [풀스택, 프론트엔드, 백엔드, 퍼블리셔]

 웹 개발자는 회사에 출근하면 어떤 일을 할까요. IT 직군과 접점을 가지고 있는 사람이라면 모를까 일반적으로 사람들이 접하는 IT라는 개념은 핸드폰으로 사용하는 애플리케이션이나 컴퓨터를 통해 이용하는 엑셀, 한컴 같은 프로그램 같은 프로그래밍의 산출물이다 보니 개발자가 일하는 모습을 이미지로 떠올리기가 쉽지 않습니다. 만약 아니라면 영화나 드라마에서 나오는 단 몇 초만에 해킹에 성공하는 만능 해커나 뚝딱 페이스북 같은 프로그램을 만드는 천재 프로그래머의 모습을 떠올리시나요?

웹 개발자의 정의

 식상할 수도 있지만 웹 개발자가 어떤 일을 하는지 알아보기 전에 웹 개발자에 대한 정의를 먼저 내려보려고 합니다. Wiki에는 "HTTP 프로토콜을 커뮤니케이션 매체로 사용하는 웹 페이지, 웹 사이트 등 WWW 기반 소프트웨어 개발자 또는 소프트웨어 엔지니어를 말한다. 대다수의 웹 개발자들은 웹 디자인, 정보설계, 사용자 인터페이스 설계, 프로젝트 관리, 웹 서버 및 데이터베이스 관리, 웹페이지 코딩 및 프로그래밍 관련 기술을 가지고 있다."라고 웹 개발자를 정의하고 있네요.

 

 간단하게 말하면 웹 사이트를 만들고 유지 보수하는 기술을 가진 사람 정도로 말할 수 있을 것 같아요. 엄밀히 따지자면 웹 사이트를 만들고 관리하지 않는다고 해서 웹 개발자가 아닌 것은 아닙니다. 웹 프로그래밍을 통해서 만들 수 있는 것들은 웹 사이트로만 한정되지 않아요. Slack과 같은 프로그램은 웹 페이지처럼 보이지 않지만 기반 기술은 웹 프로그래밍을 사용하고 있습니다. 앞서 웹 사이트에 한정 지어 웹 개발자를 말한 부분은 설명을 드리기 위해 함축적인 표현을 사용한 부분이니 오해하지 말아 주세요.

 

 

역할 분류하기 - 프론트엔드, 백엔드, 퍼블리셔, DBA, 풀스택

 웹 개발자라는 말 대신에 프론트엔드, 백엔드, 퍼블리셔, DBA, 풀스택과 같은 단어들도 들어보셨나요? 이 단어들은 웹 개발자가 수행하는 업무를 분류하고 정의하는 말입니다. 웹 개발자는 여러 가지 일들을 맡아서 처리하기 때문에 일이 가지고 있는 특성에 따라 업무를 분리하고 각자가 맡은 역할을 수행합니다.

프론트엔드

 프론트엔드는 주로 사람들이 화면을 통해서 보고 사용하는 웹 브라우저의 페이지를 만드는 일을 합니다. 일반적으로 웹 페이지는 이용하는 사람은 알 수 없지만 사용자가 사용하는 페이지의 기능들은 HTTP 통신을 통해 서버에 작업을 요청하고 수행 결과를 가져와 화면에 보여줍니다. 프론트엔드 개발자는 이러한 웹 페이지와 서버 간의 모든 상호 작용을 이해하고 사용자가 이용하는 기능을 문제없이 동작할 수 있도록 웹 프로그래밍을 통해 웹 페이지를 만드는 일을 합니다.

백엔드

 백엔드는 화면에서 요청한 일을 처리하는 부분을 만듭니다. 프론트엔드 개발이 서버와 통신을 하고 그 결과를 웹 페이지에 보여주는 일을 한다고 하면 서버와 통신을 할 때 서버에서 요청을 받아 요청에 맞는 결과를 돌려주는 기능을 만드는 것이 백앤드 개발입니다. 다시 말하면 사용자가 요청한 일들을 문제없이 잘 동작할 수 있도록 만드는 것이 백앤드 개발자의 주요 업무입니다.

퍼블리셔

 프론트엔드와 마찬가지로 화면을 만듭니다. 주로 HTML이라는 마크업 언어를 사용해 화면의 구조를 정의하고 CSS라는 디자인 기술을 통해 HTML로 정의한 구조에 디자인을 입히는 일을 합니다. 퍼블리셔와 프론트엔드는 겉으로 보기에는 비슷한 일을 하지만 퍼블리셔는 화면을 그리는 일에 주안 점을 두고 프론트엔드는 퍼블리셔가 하는 일과 더불어 서버와 상호작용하는 부분까지 만듭니다.

DBA

 DBA(Database Administrator)는 사용자가 읽고 쓰는 데이터를 관리하는 일을 합니다. 데이터 저장소를 관리할 수 있는 SQL을 사용해 단순히 데이터를 읽고, 쓰고, 수정하는 것뿐만 아니라 보다 데이터를 잘 사용할 수 있도록 데이터의 저장 방식을 정의하기도 하고, 문제가 발생했을 때를 대비해 특정 조건을 기준 삼아 데이터를 백업하기도 합니다. 다시 말해 DBA라는 단어 그대로 데이터와 관련된 전반적인 일을 관리 감독합니다.

풀스택

 웹 개발자가 하는 모든 업무를 전반적으로 다룰 줄 아는 개발자입니다. 요즘처럼 프론트엔드, 백엔드, 퍼블리셔 등 웹 개발자를 세분화하기 이전에 웹 개발자를 지칭하던 말이기도 합니다. 몇 년 전만 하더라도 많은 개발자들이 앞서 이야기한 웹 페이지 개발의 처음과 끝을 모두 다 할 수 있어야 했고 해야 했습니다. 지금처럼 웹 기술이 활성화되기 이전에 사용자들이 기대하는 웹 화면의 기능은 현재처럼 다양하지 않고 한정적으로 사용이 되었기 때문에 가능했던 부분입니다.

그래서 무슨 일을 하나요?

 다시 원래 주제로 돌아와서 이야기를 해보자면 웹 개발자는 사용자가 요구하는 웹 페이지를 만드는 일을 합니다. 예를 들어 쇼핑몰 사이트를 만든다고 한다면 사용자는 물건을 검색하고 검색한 물건을 장바구니에 담고 장바구니에 담은 물건을 결제합니다. 이때 사용자가 이용하는 모든 기능들을 잘 사용할 수 있게 만들고 문제가 없도록 지속적으로 관리를 하는 것이 웹 개발자입니다. 웹 개발자는 만들거나 유지 보수해야 할 웹 사이트가 가지는 성격에 따라 사용해야 하는 기술의 종류와 범위가 달라집니다. 일반적으로 완전히 동일한 상황에서 웹 사이트가 만들어지지 않기 때문에 웹 개발자는 상황에 따라 가지고 있는 기술과 필요한 기술을 배워 웹 프로그래밍을 합니다.

재미는 있나요?

 네 웹 페이지를 만드는 것은 재미있습니다. 모든 일이 다 그렇지만 프로그래밍을 하는 일은 어렵기도 하지만 재미있습니다. 웹 개발뿐 아니라 프로그래밍이라는 것은 가상현실 세계에서 현실을 바탕으로 초현실을 만드는 것과 같다고 생각합니다. 현실에서는 할 수 없는 일들을 코드를 통해서라면 얼마든지 상상할 수 있고 만들어 낼 수 있습니다. 이상한 나라의 앨리스에 나오는 환타지적인 세계도 프로그래밍을 통해 하나의 가상 세계로 구현해낼 수 있습니다. 그렇기 때문에 프로그래밍을 한다는 것은 어렵지만 정말 재미있는 일입니다. 더군다나 프로그래밍이라는 것은 앞으로의 전망이 어둡기는커녕 되려 먼 옛날부터 지금까지 계속 발전해왔고 앞으로도 꾸준히 성장해 나갈 분야이기 때문에 스스로가 도태되지 않는다면 끊임없는 만족감과 즐거움을 느낄 수 있는 일입니다.

반응형

댓글(49)

  • 이전 댓글 더보기
  • 알 수 없는 사용자
    2021.04.29 13:53

    제 목표도 프론트엔드 개발자가 되는 겁니다 최종적으로는 금융과 관련된 앱 웹 개발입니다 앞으로도 좋은 글 많이 부탁드립니다

  • 2021.04.29 14:32 신고

    잘 보고 갑니다 오늘도 화이팅입니다 !!

  • 2021.04.29 14:36 신고

    저도 개발자라서 이 용어들을 지겹도록 들었었죠... ㅎㅎ

  • 2021.04.29 16:46 신고

    열심히 공부 하고 가요
    정리를 잘해놓으셨네요~

  • 2021.04.29 17:45 신고

    므찌다~~

  • 2021.04.29 21:52 신고

    재미있고 멋져보입니다.
    개발자가 언어로 구현해 내는 것, 어찌 보면 마치 마법사가 언어로 하는 일과 비슷해 보입니다.

    • 2021.04.29 22:27 신고

      네 그래서 재미있어요!! 언제든 개발자의 세계로 오세요!! ㅎㅎ

    • 2021.04.30 12:32 신고

      나이 좀 있고 처음 시작하는 사람에겐 무엇을 추천하고 싶으신지요?

    • 2021.04.30 21:30 신고

      프로그래밍을 직업으로 삼는 목표가 있다고하시면 앱 개발쪽(코틀린 혹은 안드로이드, 스위프트)을 추천드리고 취미삼아서 해보신다면 자바스크립트를 배우시는 것을 추천드려요!

    • 2021.05.01 12:48 신고

      감사합니다. ^^

  • 2021.04.29 22:36 신고

    웹 개발자!!! 멋있어요~^^

  • 2021.04.29 23:15 신고

    개발자 너무 멋있습니다 ㅎㅎ !! 저는 프론트엔드 개발자가 되는게 목표입니다. 잘보고 갑니다 😊

  • 2021.04.29 23:21 신고

    멋집니다. 개발자분들은 앞으로 능력발휘할 기회가 무궁무진할 것 같아요.

  • 2021.04.30 00:14 신고

    잘 보고 갑니다~!

  • 2021.04.30 01:23 신고

    좋은 글이네요.. 요즘은 프론트앤드 개발자도 백앤드 영역도 많이 한다고 하네요 ㅠㅠ 공부할게 너무 많네요 ㅠㅠ

    • 2021.04.30 21:40 신고

      음.. 일반적으로 백, 프론트를 나누는 회사는 최소 중견 기업 이상이어야만 영역을 분리해서 일을 합니다. 중소 기업이나 스타트업은 .. 영역을 구분짓기가 사실 어렵죠. 그래서 대체적으로 중견 기업 이상을 취업의 대상으로 삼는편이에요 :)

  • 2021.04.30 08:18 신고

    저도 개발 하고 싶습니다 ㅠㅠㅠㅠㅠㅠㅠㅠㅠ

  • 2021.04.30 16:27 신고

    재미있고. 뿌듯함을 느끼는 직업이네요
    부럽~~^^ 즐거운 주말 보내세요

    • 2021.04.30 21:41 신고

      그렇죠. 자부심 한 가득입니다 ㅎㅎ
      케이트한님도 즐거운 주말 되세요~

  • 2021.04.30 17:31 신고

    잘 읽고 갑니다
    금요일이 성큼 다가왔네요 하루 힘내시고 즐건 주말 보내세요

  • 2021.04.30 19:40 신고

    파이썬 몇달째 공부하고있는 직장인입니다. 요새는 풀스택 개발자가 무조건 되어야된다고들 해서 파이썬 공부도 버거운 제 어깨가 너무나 무거워지네요 ㅜ

    • 2021.04.30 21:42 신고

      풀스택 개발자 개인적으로는 추천하고 싶지는 않지만 열심히 하신다니 멋지시네요!! ^0^

  • 2021.04.30 20:01 신고

    풀스택개발자가 많은 편인가요? 이렇게 세분화 되어있는데 모든 분야를 다할수 있는 개발자가 있다는게 믿기지 않네요 ㅎㄷㄷ

    • 2021.04.30 22:01 신고

      풀스택 개발자라고 하시는 분들이 종종 계시기는 한데 정말 풀스택 개발자라고 부를 수 있는 분은 거의 없다고 생각해요. 이전에는 전문성을 가진 개발이 필요한 경우가 많지 않았지만 지금은 한 분야의 기술을 다루기 위해서는 많은 지식과 풍부한 경험이 필요하기 때문이에요!

  • 2021.04.30 22:36 신고

    풀스택을 지향하는데 쉽지 않네요 포스팅 할정도의 실력을 갖추면 좋겠네요 ㅎㅎㅎ 저는 php, db까지 사용해요

  • 2021.05.01 09:28 신고

    맞아요! 저도 국비지원으로 배우고 있는데 재미가 쏠쏠해요!!!

    • 2021.05.01 21:08 신고

      국비 과정으로 배우고 계시군요 +_+
      끝까지 잘 수료하시기를 응원할게요!

  • 2021.05.01 13:00 신고

    웹 개발을 배우는것 중 비전문가가 시작하기에 추천하는 루트가 있을까요? 기간이랑
    학원 3개월 정도 걸린다 요런거..

    • 2021.05.01 21:12 신고

      비전공자가 3개월 과정으로 취업 할 수 있는 곳은 사실상 SI 밖에 없어요 ㅠ
      취업을 목표로 개발자가 되신다고 하시면 적어도 6개월 과정은 들으셔야 좋습니다. :)
      6개월도 어떻게 보면 최소한의 조건이에요.

      더 자세한 답변이 필요하시면 어느정도를 생각하고 계신지 이야기 해주세요~ ^0^

  • 2021.05.01 18:25 신고

    예전에 고등학생 때 자바를 배우고 잠깐이나마 소질이 있는 줄 알고 꿈도 꿨었지만,
    날이 갈수록 어렵게 느껴지고 오히려 피하고 피하던 전기 전자 계통이 쉽고 재미를 느끼게 되더라구요.
    저는 결국 그쪽 방면으로 나가게 됬지만 이웃님 포스팅보면서 한 번쯤 다시 해보고 싶다는 생각도 드네용

    • 2021.05.01 21:13 신고

      개발자가 예전에는 대우가 적당한 편이었는데 지금은 매우 좋아졌어요. 앞으로는 더 좋아질거라고 생각하고요. 개발자가 되신다면 환영입니다 ㅎㅎ

Designed by JB FACTORY