프론트엔드와 백엔드의 차이
프론트엔드 vs 백엔드
프론트엔드와 백엔드의 차이를 빙산에 비유하여 자주 설명하곤 한다. 빙산은 수면 위로 보이는 부분과 수면 아래에 숨겨져 있는 부분이 있다.
수면 위로 노출되어, 사람들이 볼 수 있고 사진도 찍을 수 있는 부분 (상호작용)을 프론트엔드와 수면 위의 보이는 부분의 기초가 되고 받쳐주는 역할 (서버)을 하는 부분을 백엔드라고 할 수 있다.
우리가 네이버, 구글 등 웹 사이트에 접속했을 때 보이는 깔끔한 메뉴, 이미지, 레이아웃 등 상호작용하는 프론트엔드와, 보이진 않지만 화면에 데이터를 보내주고 사용자의 행동들을 처리하는 백엔드의 중요성은 매우 크다.
프론트엔드
프론트엔드 개발자는 사용자가 웹 페이지에 접속했을 때 보이는 모든 요소를 만드는 작업을 한다. 이는 사용자 인터페이스(UI)와 사용자 경험(UX)을 설계하는 것을 포함한다. 프론트엔드는 사용자가 처음으로 접하는 인터페이스이며, 여기서 제공되는 훌륭한 경험이 사용자의 참여를 이끌어내고 이는 결국 많은 사용자의 확보로 이어진다.
백엔드
반면, 백엔드 개발은 사용자가 보지 못하는 서버, 애플리케이션 및 데이터베이스와 같은 부분에서 이루어진다. 백엔드 개발자는 데이터를 저장하고, 처리하며, 프론트엔드에서 사용자의 요청에 따라 필요한 데이터를 전달하는 역할을 한다. 이들은 서버 측 로직, 데이터베이스 관리, 서버의 아키텍처를 설계하는 등의 작업을 수행한다.
백엔드 개발자가 되고 싶은 이유
나는 일본에서 3년 넘게 개발자로 일했지만 2년 차가 넘어갈 때까지 프론트엔드와 백엔드가 무엇인지도 몰랐다.
노베이스로 입사 + 이렇다 할 사수가 없던 환경 + 둘 다 하고 있었음 + 나의 무관심의 결과라고 생각한다.
분명 그때 당시 내가 무엇을 했었고, 그래서 무엇을 할 수 있었고, 무엇을 좋아했는지를 돌이켜본다면 나는 UI/UX를 고민하고, HTML/CSS 작성, DOM 조작 등 보단 비즈니스 로직을 짜는 것을 좋아했고, 쿼리문을 작성하는 것을 좋아했다.
분명 그랬지만 귀가 얇았던 나는 앞으로는 프론트엔드가 백엔드보다 유망 할 것이라는 누군가의 말을 듣고, 한국으로 돌아오자마자 프론트엔드 부트캠프에 들어갔다. 기본기 없이 바로 실무를 하며 야매(?)로 하던 것들을 체계적으로 배우니 재미있었고, 스스로의 실력에 대해 나쁘지 않다고 생각했다. 하지만, 2~3개월차를 지나며 내가 원래부터 할 수 있었던 것들을 넘어서는 범위의 것들을 배우기 시작하면서 급속도로 흥미를 잃었고, 고민은 많이하지만 마음먹으면 뒤를 돌아보지 않는 나는 프론트엔드 부트캠프를 나오게 되었다.
많이 돌아오게 되었지만, 내가 좋아하는 것을 제대로 배워서 잘하고 싶다. 세심한 편이고 인내심과 끈기가 있는 나는 백엔드 개발자가 적합하다고 생각한다. 6개월 짧지 않은 시간이지만 또 금방 지나가는 시간이다. 지금 마음을 잃지 않고 10년 뒤에는 최고의 백엔드 개발자 중 한 명이 되고 싶다.
reference
- https://blog.back4app.com/ko/%EB%AA%A8%EB%B0%94%EC%9D%BC-%EC%95%B1%EC%9A%A9-%EB%B0%B1%EC%97%94%EB%93%9Cbackend%EB%A5%BC-%EC%96%B4%EB%96%BB%EA%B2%8C-%EB%A7%8C%EB%93%A4-%EC%88%98-%EC%9E%88%EC%8A%B5%EB%8B%88%EA%B9%8C/
- https://www.elancer.co.kr/blog/view?seq=205
- https://yozm.wishket.com/magazine/detail/236/