웹 개발자 직군을 세분화하면 2개의 카테고리로 나눌 수 있습니다.
: Front-End 프론트엔드 개발자 & Back-End 백엔드 개발자
사용자 (Client 클라이언트) 가 직접 사용하는 화면을 개발합니다.
예를 들어, 웹 사이트를 접속하거나 모바일로 서버에 접속했을때 브라우저에 출력해주는 부분,그리고 앱화면에 출력되는 부분들을 개발합니다.결국 서버 단의 개발을 제외한, 외적인 요소를 개발하는 직무를 통틀어 프론트 엔드라고 합니다.
프론트엔드 개발자는 HTML/CSS/Javascript 를 사용하여 개발 합니다.
Hyper Text Markup Language 의 약자로써 웹 사이트를 구성하는 가장 기초적인 언어입니다.
인터넷 익스플로러, 크롬, 사파리, 파이어폭스와 같은 웹 브라우저에 어떤 형식으로 데이터를 출력할지를 결정하는 역할을 합니다.
Cascading Style Sheets 의 약자로, 웹 페이지라고 불리는 문서의 스타일을 꾸밀 때 사용하는 시트 언어입니다.
Javascript 는 동적 언어입니다. 반대로 HTML 과 CSS 는 정적 언어입니다. 정적 언어가 웹페이지를 화면에 그려주었을때, 웹 페이지를 더욱 풍부하고 생동감 있게 만드는 기능들을 구현할 수 있는 작고 가벼운 언어입니다.
Front-End 개발자는 보통 이 세가지 HTML/CSS/Javascript 언어들을 이용하여 웹 페이지 개발을 합니다. 추가적으로 Vue, React 프레임워크와 jQuery 등을 개발에 활용합니다.
위메프 -유한승 개발자 인터뷰- :
실제 사용자들이 원활하게 서비스를 이용하기 위한 화면에 대한 내용 및 비지니스 처리, 화면 효과 등을 개발하고 있습니다. 현재 프론트엔드 개발팀은 모바일웹, PC, 앱 등의 화면을 개발하고 상품 정보 등의 데이터를 화면에 보여주기 위한 서버를 같이 운영하고 있습니다.
또한, 새로운 시스템에 대한 기술 정비 및 개선 사항을 작업하고 고객들이 사용하는 서비스의 세부 내용을 마케팅팀 외 로그모델링 팀에 로그 형태로 연동 및 전송하는 업무도 진행 중입니다.
출처 : https://www.theteams.kr/teams/7402/post/70526
이롭게 -Judith 개발자 인터뷰- :
디자이너와 개발자의 중간단계?
User Interface (UI) 라는 웹에서 사용자에게 보이는 부분을 개발하고 있습니다. 디자인을 어떤 식으로 마크업 해야할지 생각하고, 디자이너들이 텅 빈 캔버스를 채워가는 듯한 일을 코딩을 통해 진행하고 있습니다. HTML의 기본을 활용하거나, 프로그래밍 지식들을 통해 접근성이 높은 코드를 짜는 것이 중요합니다.
출처 : https://www.iropke.com/archive/honey-tip-2.html
메드업 -이든 개발자 인터뷰- :
기획자와 디자이너가 기획안을 전달해주면 그대로 웹 페이지에 구현하고, 백엔드 개발자가 만든 API를 연동하여 페이지를 완성합니다. 이를 위해 HTML, CSS, Javascript 언어의 기본을 이해하고 접근성, SEO, UI/UX, React 등의 기술적 지식을 공부하여 업무에 적용하고 있습니다.
출처 : https://tech.madup.com/frontend-interview/
에이비일팔공 -이찬희 개발자 인터뷰- :
마케터들이 마케팅 성과를 확인하고 분석할 수 있는 대시보드를 개발합니다. 대표적으로 UI/UX, 테스트, 시각화, 설계 및 최적화 네 분야로 나뉘며 각각의 컴포넌트나 스타일 관리, 상태 관리를 최적화하는 개발 업무를 진행하고 있습니다. 또한 렌더링을 최적화하고, 불필요한 리소스는 어떻게 분할할 것인지 테스트 및 인프라의 안정성을 보장하기 위한 여러가지 측면을 고려하여 업무에 임하고 있습니다.
겉으로 드러나는 부분을 제외한 서버단의 기능들을 개발합니다.웹 사이트 & 웹 어플리케이션은 서버, 응용 프로그램 및 데이터 베이스로 구성됩니다.
안 보이는 곳에서 데이터를 생성, 처리, 저장하는 기능들을 수행하는데,이를 구성하는 부분을 개발하는 것이 백엔드 입니다.
백엔드 개발자는 PHP, Ruby, Python, Java, .Net 등의 서버 측 언어를 사용합니다.
Hypertext Preprocessor 의 약자이며, 서버 쪽에서 실행 되는 프로그래밍 언어입니다.
웹 개발에 최적화 되어 있으며, 주로 HTML 코드를 프로그래밍적으로 생성 합니다.
동적 객체 지향 스크립트 언어로써 Python 과 유사한 점이 많습니다.
인터프리터 언어로써 공동 작업과 유지 보수가 매우 쉽고 편합니다.
파이썬은 많은 곳에 활발하게 사용됙 있고 예를 들어, 드롭박스나 인스타 그램이 있습니다.
컴파일러 언어이며 동시에 인터프리터 언어로 JVM (자바 가상 머신) 에서 구동 됩니다.
마이크로 소프트 Microsoft 에서 개발한 윈도우 프로그램 / 어플리케이션 개발 및 실행환경 입니다.
이런 도구와 언어들을 사용하여 웹 어플리케이션 (응용프로그램)을 개발합니다.
이는, 마치 웹 어플리케이션은 보이지는 않지만 프론트엔드 단에서 보이는 화면 & 기능들이 잘 작동할 수 있도록 하는 기계 내의 부품들을 만드는 것이라고 생각하면 이해하기 편합니다.
배달의 민족 -이동욱 개발자 인터뷰- :
배달의 민족에서 결제, 정산, 포인트 서비스 백엔드를 개발합니다. 돈에 관련된 기능을 개발합니다.
출처 : https://www.imaso.co.kr/archives/4869
JANDI -Ali 개발자 인터뷰- :
클라이언트 서버에 제공되는 데이터들을 로직에 따라 저장하거나 메모하는 일입니다. 쉽게 말하자면 서버에서 제공된 데이터를 Graphical User Interface를 통해 쉽게 볼 수 있도록 표시하는 부분을 개발합니다.
사용자가 GUI를 통해 입력한 정보를 로직에 따라 저장하고 인증이 될 수 있도록 서버를 개발 및 관리합니다.
출처 : http://blog.jandi.com/ko/2017/10/17/lunch-interview-ali-developer/
LINE -김도한 개발자 인터뷰- :
Massaging Server 개발 업무를 하고 있습니다. 메시징 기능 뿐만 아니라 해당 시스템에서 파생된 여러 다양한 기능들을 개발하고 있습니다. 이러한 업무는 사용자들에게 직접적으로 노출되지 않지만 시스템이 동작하는데 큰 역할을 하고 있습니다.
출처 : https://www.facebook.com/linecareers/posts/2291716487718039/
Full Stack Developer 로써 Front-End 와 Back-End 개발을 모두 다룰줄 아는 개발자를 의미합니다.
쉽게 풀어 설명하자면, 데이터베이스, 웹서버, 웹 단 코드, 브라우저, 클라이언트 단 코드에 대한 지식을 모두 이해하고 개발할 수 있어야 합니다. 여기서 잘못 알고 있는것이, 디자인 능력이 필요한 자바스크립트나 동적 웹 페이지를 멋지게 만들어 내는 것은 풀스텍 개발자와는 관련이 없습니다.
또한 이전 웹 개발 시장과는 달리, 백엔드 , 프론트엔드 기술들이 계속 발전하고 Client의 데이터가 다양해지고 양이 급증 하면서 모든 것을 처리하기에는 문제가 종종 생깁니다.
그렇기 때문에 현실적으로 현 시장에서도 각 분야의 전문가를 고용하는 것이 기업의 입장에서는 유리하며, 개발자 지망생의 경우 풀스텍 개발자 보다는 전문성을 살리는 쪽을 선택하는것이 어쩌면 나을 수도 있습니다.
출처 : https://mincoding.co.kr/developer/?pageid=1&mod=document&uid=123