아하
검색 이미지
생활꿀팁 이미지
생활꿀팁생활
생활꿀팁 이미지
생활꿀팁생활
덕망있는베짱이77
덕망있는베짱이7721.04.05

백엔드 프로그래머는 무슨일을하나요?

안녕하세요~

퍼블리싱 빼고 전부 개발하고 있는 개발자입니다.

프론트가 html, jsp, asp, javascript 기능부라면

백엔드 프로그래밍 기준은 컨트롤러부 비즈니스 로직단 API 만들어주고 디비단 까지를 일컫나요??

백엔드 프로그래머의 기준이 어디서 어디까지인가요?

55글자 더 채워주세요.
답변의 개수
25개의 답변이 있어요!
  • 안녕하세요.

    요즘 파이썬이 대세라고는 알려져있습니다.

    보편적으로 웹개발이 취업하기도 광범위합니다.

    또한 기본적으로 java는독학하기에도 수월합니다.

    자바스크립트를 시작으로해서 앞부분 프론트를 마무리하고 java로 들어서면서 서비스쪽(조금 더 디테일하게) 배우는것이 괜찮을 것 같습니다.

    자바스크립트는 현재 많이 사용중이므로 쉽게 접근하실 수 있습니다.

    감사합니다.


  • 백엔드 프로그래머의 기준이 어디서 어디까지 인가요?

    - 요새의 프론트 개발자 들은 질문자 님이 말씀하신 jsp, javascript 의 스크립트 부분과 컨트롤러 + Dao 로 이어지는 로직처리 부분 모두를 다 다루고 있습니다. 스크립트 와 로직처리를 구분하지는 않구요. 둘다 한다고 보면 됩니다.

    백엔드 프로그래밍의 기준은 사람마다 약간씩 차이는 있겠지만..제가 생각하는 정의는 아래와 같습니다.

    1. 매일 수행해야 하는 배치 처리 - 여러가지 통계나 정산 관련 해서 새벽에 도는 프로그램

    2. API 서버 - 대용량의 데이터를 다루고 여러 시스템을 아우르는 큰 규모의 API 서비스 -> 웹화면에서 국소적인 부분의 데이터를 조회하는 류의 API 보다 더 넓고 광범위한 규모의 API 서버를 의미함(외부에 공개하는 공개 API 같은 류)

    3. TCP, MQTT 등의 프로토콜을 이용한 대규모 요청을 처리하는 서버 구현

    요약하면..흔히 수행하는 중소규모의 WEB 프로젝트 에서의 컨트롤러 단에서 비즈니스 로직을 작성하는 개발자를 백엔드 라고 칭하기 보다는..보통은 독립적으로 기능을 수행하는 서버프로그램을 작성하는 개발자를 백엔드 프로그래머라고 합니다.


  • ○백엔드 개발자 프로그래밍 언어

    Java 진영의 Spring(프레임워크)

    Ruby 진영의 Ruby on Rails

    Python의 Django, Flask 등

    JavaScript를 사용하는 Node.js 진영의 Express, Koa 등

    ASP.net

    C#의 .NET Core 주로 북미에서 쓰인다

    PHP는 라라벨, 심포니가 주로쓰인다.


  • 백엔드라 하면 보통 데이터관리, 연동 과같은 업무가 주입니다. 요즘음 aws 클라우드나, django 쿠버네티스, 노드 관리 까지 하는것을 추천 드립니다. 화면 UI 부분을 만들지는 않지만 기본적인 관리UI 정도는 하는것이 좋습니다. 프로젝트 전체 입장에서 볼때는 업무의 효율성을 위해 프론트와 백엔드를 나누는 것이지 개발자로서는 관심있는 기술이 있으면 두가지 모두 다하셔도 됩니다.


  • 프론트앤드와 퍼블리셔가 눈에 보이는것 모두라면

    백앤드 개발자는 이제 눈에 안보이는 뒷단을 처리하는 것 입니다.

    수문장님 말대로 컨트롤부터 비지니스 로직단 API까지 만 들수도 있고

    각종 모듈 연동에서 부터 배포까지 수 많은 일을 할 수 있습니다.

    보통 중소기업에선 원맨쇼를 하죠 ㅎㅎ 자바 부터 시작해서 was 서버 셋팅 등등


  • 백엔드 개발자는 말하신 대로 컨트롤러부분 부터 디비 조회까지 하는 걸 말하죠.

    회사에 따라 다르지만 일반적으로는 쿼리조회까지는 개발자가 담당하고,

    조금 더 큰데는 DBA 가 쿼리까지 준다고는 하네요.

    DB 스키마는 일반적으로 DBA 가 하죠.

    요즘이야 프론트엔드가 프레임워크로 자리잡아서 따로 분리를 하는거지 원래 백엔드개발한다고 백엔드만 하지는 않았죠.

    프론트도 어느정도 할 줄 알죠.

    프론트프레임워크도 vue 같은거는 진입장벽이 높지는 않아서 백엔드개발자라고 하더라도 둘다 가능합니다.

    앱개발자와는 분야가 확실히 나뉘긴 하지만 백엔드개발자라고 프론트엔드를 전혀 모르면 업무하기 힘들수도 있을거 같아요.

    결과적으로 백엔드 개발자라고 하면 서버api 관련된 모든 업무이고, 제외할건 서버인프라 및 CI,CD 업무 DB관리 만 제외하고 백엔드개발자의 역할이라고 정의 되겠네요.


  • 현업에서 백엔드 프로그램의 기준은 업체마다 그 기준이 약간씩 다릅니다만, 질문자님의 프론트엔드가 web 페이지라면 생각하시는 것이 백엔드가 맞습니다

    사용자에게 보여지고 사용자가 직접 컨트롤하는 페이지 즉 클라이언트 사이드를 제작하는 것이면 프론트엔드라고 분류되며, 해당페이지의 요소들이 사용하는 서버를 개발하는것이면 백엔드 개발입니다.

    Was 및 DB, 별도 로깅 시스템 등 서버사이드에서 서비스되는 기능들을 개발하는 것이 백엔드 개발이라고들 합니다.

    아울러 서버사이드에서 타 서버를 연동하여 개발하는 경우도 백엔드 개발이라고 합니다.


  • 거의 바르게 이해하고 계시네요.

    백엔드는 프런트엔드와 커뮤니케이션하여 디비 액세스를 통해 비즈니스를 완성합니다.

    사용하는 언어는 Java, PHP, Node.js, C++, Python, Javascript 등입니다.

    언어 외에도 디비, 웹서버와 네트워크를 비롯한 각종 인프라에 대한 이해가 필요합니다.


  • 백엔드개발자는 웹개발자라는 개념 안에 속해

    있는 분야인데, 웹개발자 속에는 프론트엔드와

    백엔드개발자로 구분이 되어 있다고 하는데요.

    간단하게 소개 드리면 프론트엔드개발자는 눈에

    보이는 부분을 관리 및 유지보수 하는 개발자고

    백엔드개발자는 눈에 보이지 않는 웹에 데이터와

    사용자 사이 중간 이송을 담당하는 개발자입니다.


    앞서 간단히 설명드렸지만 백엔드개발자는 화면

    뒷단 즉, 우리 눈에 보이지 않는 영역을 개발하는

    업무를 담당하는 개발자라고 생각하시면 됩니다.

    IT 서비스에 필수적인 데이터들과 관련된 업무를

    담당하고 있는데요. 프론트엔드 자체를 가능하게

    만드는 곳이 ​백엔드단이라고 생각하시면 되는데,

    때문에 백엔드단에서는 서버 및 운영체제 관리와

    API 개발, DB로 분류하여서 이곳을 개발하는 것

    그것이 백엔드개발자 역할이라고 보시면 됩니다.

    더 쉽게 설명을 드리자면 백엔드개발자의 직무는

    홈페이지를 제작할 때, 가장 마지막에 개발을 하게

    되는 직무라고 생각하시면 됩니다. 프론트엔드의

    개발자는 사용자가 볼 수 있는 모든 화면을 구현해

    놓았을 때 각 화면에 맞는 기능들을 서로 이어주고

    새로운 기능을 개발하는 것이 백엔드 직무입니다.


  • 제가 알고 있는 기준으론 말씀하신대로 java sql을 핸들링하는 개발자를 api 개발자 백앤드 개발자라고 지칭합니다 프로젝트에 들어갈때도 그렇게 알고 들어가고요 백앤드 web 개발 환경에선 아마 둘다 하는 풀스택으로 개발하겠지만요 요새는 많이 분업화해서 진행하기 때문에 경력 쌓으실땐 둘다 하는 프로젝트로 다니셔서 자기에 맞는 영역을 선택하시는걸 추천 드립니다


  • 말씀처럼 프론트는 앞단, 백앤드는 뒷단이라고 칭합니다.

    주로 프론트는 화면의 제어쪽을 담당하며 백엔드는 화면이 움직일 수 있도록 개발 프로그램 로직과 DB의 모든 것을 전반적으로 관리합니다. 그리고 API나 배치 스케줄러 등 화면과 별개로 원활한 기능을 수행하도록 프로그램도 관여합니다.

    예를 들어 쇼핑몰 사이트라면 프론트 개발자는 고객이 쇼핑을 이용하는 화면단을 구성하며 조회, 수정, 삭제 등의 기능들은 백앤드 프로그래머로부터 정해진 규약에 따라 제공받아 화면에 표현을 해줍니다.

    백앤드 프로그래머는 앞단 프론트 부분의 기능에 관련된 뒷단 기능을 지원해주는 격이죠.

    관리자 화면도 마찬가지로 화면만 프론트가 관여하고 뒷단은 백엔드 개발자가 개발합니다.

    화면의 기능 이외에 쇼핑의 배송처리, 배송완료 처리 등은 고객이 알지 못하게 수행되기에 백엔드 개발자가

    원활한 쇼핑 기능을 이용하기 위해 배치나 스케줄러 등으로 제어도 합니다.


  • 안녕하세요 현재 java 개발자 3년차입니다.

    백엔드는 데이터를 처리하는 방법에 따라 다르게 쓰입다.

    Jsp라고 하더라도 비동기 /동기 방식이 있는데

    Db를 거치지않고 웹상에 잠깐 저장했다고 데이터를 처리 할수있는 비동기 방식(ex Ajax)있습니다.

    물론 Db에 저장하는 방식이 있는데 Db관련 까지 백엔드 부분이라고 생각하면 좋습니다


  • 안녕하세요. A-HA 프로그래밍 전문가입니다.

    백엔드 프로그래머는 UI 밑단의 로직을 처리하는 부분을 담당합니다.

    예를 들면 UI에서 그래프를 그리기 위해 사용하는 데이터를 생성하기도 하고, 특정 계산을 주기별로 해서 Summary 데이터를 만들어 놓기도 하죠.

    또는 UI에서 메세지를 받아 실시간으로 요청하는 업무를 처리해주는 역할도 수행합니다.


  • 우선 프론트 엔드 개발자의 역할과 백엔드 개발자의 역할은 다릅니다.

    프론트 엔드 개발자들은 디자이너들이 기획자의 의도에 따라서 디자인한 화면의 이미지를 웹서비스나 앱을 사용하는 유저들의 시각적으로 눈앞에서 직접 대면하는 표면적인 부분을 프로그래밍 을 담당하고 있고,

    백엔드 개발자들은 유저들의 시각적으로 안보이는 부분이라고도 할 수 있는데 서버의 작동과 연관이 있습니다.

    프론트 엔드 개발자들의 경우 HTML 과 CSS , 자바스크립등을 이용하며, jQuery, bootstrmap, backbone, angularjs, emberjs등 을 습득하여 사용하기도 합니다.

    백엔드 개발자들의 경우 PHP ,Ruby, Python, Java , .net 등 프로그래밍언어를 습득하고 데이터베이스 관련 Mysql, oracle, sql server등 관련 스킬을 배웁니다.


  • 안녕하세요~ 현업에서 5년째 백엔드 개발을 맡고 있습니다.

    말씀하신대로 api controller 부터 db query level까지 일컫습니다.

    다만, jsp는 html 을 웹서버에서 동적으로 생성해 주기에 백엔드 영역으로 보시면 될거같습니다. 다만 html css는 마크업 담당자분이 만들어주시면 백엔드개발자들은 해당 html 내 java 코드 영역(동작부)을 주로 개발합니다.


  • 보통 백엔드 개발이라고 하면 API서버를 개발하는 것이죠

    프론트엔드는 화면을 개발하고 API서버에서 데이터를 가지고 오고 화면에 보여주는 등의 로직을 처리하는 것입니다.

    회사마다 다르겠지만 최근에는 데브옵스라고해서 인프라도 조금 관리를 하는 것으로 알고 있습니다.

    이건 회사마다 다르기 때문에 다 그런것은 아닙니다.


  • 네 맞습니다. 백엔드가 그 컨트롤러 비즈니스로직단 부터 API도 만들고 디비까지 손을 댑니다. 큰 회사는 또 디비쿼리 튜닝하는 DBA도 데리고있겠지만 여튼 튜닝은 해주더라도 보통은 서버백엔드개발자가 개발하는게 일반적입니다. 보통 그 범위라고 보면 되는데 개발을 하다보면 로그도 볼일이 생기고 보안이나 이런부분도 보다보면 그 서버의 os 보통은 centos나 우분투겠지만 여튼 그쪽부분도 익숙해지게 되어있고 java같은 경우는 배포라든가 크론탭이라던가 그런쪽까지 보게되겠지요.. 그정도입니다.


  • 백엔드 개발자

    웹 사이트의 프런트 엔드를 가능하게하는 것은 무엇일까요? 모든 데이터는 어디에 저장됩니까? 이것이 백엔드가 들어오는 곳입니다. 웹 사이트의 백엔드는 서버, 애플리케이션 및 데이터베이스로 구성됩니다. 백엔드 개발자는 웹 사이트의 사용자 쪽 측면이 처음부터 존재할 수 있도록하는 구성 요소를 지원하는 기술을 구축하고 유지합니다.

    기술과 도구

    서버, 애플리케이션 및 데이터베이스가 서로 통신 할 수 있도록 백엔드 개발자는 PHP, Ruby, Python, Java 및 .Net과 같은 서버 측 언어를 사용하여 애플리케이션을 빌드하고 MySQL, Oracle 및 SQL Server를 사용하여 데이터를 검색, 저장 또는 변경하고 프런트 엔드 코드에서 사용자에게 다시 제공합니다. 백엔드 개발자를위한 채용 공고는 종종 Zend, Symfony 및 CakePHP와 같은 PHP 프레임 워크에 대한 경험을 요구합니다. SVN, CVS 또는 Git과 같은 버전 제어 소프트웨어에 대한 경험; 개발 및 배포 시스템으로서 Linux에 대한 경험.

    백엔드 개발자는 이러한 도구를 사용하여 깔끔하고 이식 가능하며 잘 문서화 된 코드로 웹 애플리케이션을 작성하거나 기여합니다. 그러나 해당 코드를 작성하기 전에 비즈니스 이해 관계자와 협력하여 특정 요구 사항을 이해 한 다음이를 기술 요구 사항으로 변환하고 기술 설계를위한 가장 효과적이고 효율적인 솔루션을 찾아야합니다.

    “저는 데이터 조작을 좋아하기 때문에 항상 백엔드 개발을 선호했습니다.”현재 Wildbit의 소프트웨어 개발자 인 오랜 백엔드 개발자 JP Toto가 말했습니다. “최근 공개 및 비공개 API는 모바일 장치, 웹 사이트 및 기타 연결된 시스템 간의 데이터 거래에 필수적인 부분이되었습니다. 대중이 유용하다고 생각하는 API를 만드는 것은 제 업무에서 매우 만족스러운 부분입니다. "


  • 백엔드개발자는 API서버 및 웹 페이지, 애플리케이션 개발을 담당하고, 이를 위해선 백엔드 개발언어인 JAVA, 표준프레임워크인 Spring Framework, 그리고 서버, 데이터베이스, 네트워크도 배우셔야 합니다 위의 기술들은 백엔드 개발의 기본 로드맵이라 할 수 있으며 이 외에도 많은 공부가 필요합니다


  • 탈퇴한 사용자
    탈퇴한 사용자21.04.05

    안녕하세요.

    백엔드 프론트엔드라는 용어는 REST-API 기반 프로그래밍 기법이 흥행하게 되면서 나오게 되었습니다.

    심플하게 보자면 백엔드는 api 공급자이고, 프론트엔드는 요청/소비자입니다.

    백엔드는 디비나 파일시스템 혹은 다른 연동시스템에서 데이터를 가져와 가공하고 규격화된 포맷으로 프론트엔드에게 제공할 수 있도록 api와 문서를 제공합니다.

    이렇게 하면 프론트엔드는 백엔드와 독립적으로 만들 수 있으며, 어떤 언어와 기술스택을 사용해도 무관하게 됩니다.


  • * 프론트엔드(Front-end)

    : 프론트앤드는 단어 자체의 뜻과 같이 사람의 눈에 보이는 페이지를 개발하는 업무를 담당하는

    프로그래머를 의미합니다. 프로그래밍 언어를 활용해서 웹 페이지를 제작하는 일을 하는 것이

    프론트엔드 프로그래머입니다. 프론트엔드 프로그래머는 JAVA 기반의 스택을 주로 활용하고

    CSS, HTML 또는 JAVA Script를 사용합니다.

    * 백엔드(Back-end)

    : 백앤드 프로그래머는 말 그대로 눈에 보이지않는 개발자 옵션과 같은 것을 개발하는 업무를

    주로 담당합니다. 웹사이트에 로그인하기 위한 정보창 입력과 같은 것을 만드는 것이 프론트앤드

    프로그래머의 일이라면 그 내용이 맞는지 아닌지를 확인해주는 일을 하는 것이 백엔드 프로그래머가

    하는 일입니다.

    백엔드 프로그래머가 되기위해서는 JAVA스택, LAMP, WISA, MEAN 중 하나의 스택을 활용할 수

    있어야하며 주로 활용되는 것이 JAVA 스택입니다.


  • 말씀하신게 맞습니다. 프론트 개발자는 클라이언트 개발자라고도 하는데, HTML, JSP, CSS 등을 사용해 눈에 보이는 부분을 개발 한다고 생각하면 됩니다. 백엔드 개발자는 서버 개발자라고도 하는데, 서버 및 운영체제 관리, API, DB, 비지니스 로직을 개발 한다 생각하시면 됩니다. 도움이 되셨길 바랍니다.


  • 안녕하세요. 아하 프로그래밍 지식 답변자 입니다.

    스타벅스에 비유를 하여 설명을 드리겠습니다.

    스타벅스는 다양한 메뉴가 존재하며 매장별로 판매하는 메뉴도 동일하죠. 그리고 니트로매장 같은 특별한 매장에는 특별 메뉴도 존재합니다. 그리고 그 메뉴들은 모드 포스기에 입력되어있죠. 포스기는 종업원이 손님들의 메뉴를 편하게 주문받을 수 있는 화면과 카드결제 등 여러 기능이 있습니다. 즉, 사용자가 쉽게 사용할 수 있어야 하는 곳이 프론트 엔드 입니다. 질문자님이 지금 질문을 올린 곳도 프런트 엔드 개발자의 역할 중 하나 입니다.

    스타벅스 매장에 손님이 들어왔고, 종업원이 메뉴를 선택하여 영수증을 출력해 종업원에게 전달했습니다. 실제로는 다르지만, 쉽게 설명을 하기 위해 몇 가지 과정을 생략 하겠습니다. 종업원이 포스기를 조작하여 매장의 커피 매출이 어딘가에 있는 DB에 저장이 되어야 하고, 인증된 포스기만 해당 DB에 접근해야 합니다. 이를 위해 스타벅스는 데이터센터를 운영하고 있고 해당 데이터센터에는 인증된 포스기만 스타벅스 데이터베이스에 접근할 수 있는 API들이 작동 중 입니다. 이렇게 사용자 UI는 없지만 데이터 저장, 인증 등 복잡한 업무를 처리하는 것이 백앤드 입니다.

    답변이 도움이 됐으면 좋겠습니다. 좋은 하루 되세요!


  • 안녕하세요. 이해하신 바가 맞습니다.

    백앤드의 경우

    1. API제작 및 인터페이스구현

    2. 비즈니스로직구현

    3. 데이터베이스 연동구현 또는 데이터베이스 스키마를 포함한 데이터베이스구현과 최적화(애매하긴 한데요 DB담당이 따로 있는곳도 있습니다)

    4. 서버사이드 렌더링구현

    5. 페이지 로딩시간 최소화

    등의 일을 하며 node.js, python, JAVA등 다양한 언어와 해당 언어로 만들어진 framework을 사용합니다.

    그런데..요즘은 그 경계가 그리 뚜렸하지는 않습니다.


  • 안녕하세요 ~

    일단 같은 개발자로서 화이팅입니다

    제가 아는 기준으로 말씀드릴게요!

    백엔드는 서버에서 작용하는 기술을 다루고 시스템 구성 실체에 접근하는 파트입니다

    그리고 사용자와 접촉하지않고 프론트앤드와 연동하여 기술적인 부분을 처리하구요

    백엔드는 세가지로 나뉘어요 서버관리자, DB관리자, 백엔드 developer

    그리고 요구되는 기술은 PHP, Ruby, Python, Java, Net 언어를 사용하여 응용 프로그램 제작이 있구요

    MySQL, Oracle, SQL Server 를 사용하여 데이터 검색, 저장, 변경 을 해서 사용자에게 제공하는 역할을 합니다 !