요즘IT
위시켓
최근 검색어
전체 삭제
최근 검색어가 없습니다.

웹 개발 생산성을 높이기 위한 방법이라는 글에서 ‘깃허브 코파일럿(GitHub Copilot)’에 대해서 소개한 적이 있습니다. 깃허브 코파일럿은 ‘깃허브(GitHub)’에서 2021년에 출시한 서비스로, 개발자가 작성한 주석이나 함수명을 이해하여 코드를 자동 완성해 제시하는 기능입니다. 이번 글에서는 깃허브 코파일럿의 동작 방식과 장단점을 알아보고, 사용 소감과 함께 개발 생산성에 미치는 영향에 대해서 정리해봤습니다.

회원가입을 하면 원하는 문장을
저장할 수 있어요!

다음

회원가입을 하면
성장에 도움이 되는 콘텐츠를
스크랩할 수 있어요!

확인

개발

“세상 참 좋아졌네”…깃허브 코파일럿 리뷰

년차,
어떤 스킬
,
어떤 직무
독자들이 봤을까요?
어떤 독자들이 봤는지 궁금하다면?
로그인

 

웹 개발 생산성을 높이기 위한 방법이라는 글에서 ‘깃허브 코파일럿(GitHub Copilot)’에 대해서 소개한 적이 있습니다. 깃허브 코파일럿은 ‘깃허브(GitHub)’에서 2021년에 출시한 서비스로, 개발자가 작성한 주석이나 함수명을 이해하여 코드를 자동 완성해 제시하는 기능입니다. 이번 글에서는 깃허브 코파일럿의 동작 방식과 장단점을 알아보고, 사용 소감과 함께 개발 생산성에 미치는 영향에 대해서 정리해봤습니다.

 

깃허브 코파일럿 동작 방식과 장단점

1) 깃허브 코파일럿 동작 방식

GitHub CopilotOpen AI에서 만든 Codex라는 언어 모델을 사용하였으며, 인공지능이 GitHub가 보유한 수많은 public 소스코드를 학습하여 만들어졌습니다. 개발자가 IDE에 ‘GitHub Copilot Extension’을 설치하고 주석이나 함수명을 입력하면, 이를 인공지능이 파악하여 작성해야 할 소스 코드를 마치 검색어 자동 완성 기능처럼 제시해줍니다.

 

2) 깃허브 코파일럿 장단점

무에서 유를 창조하듯이 개발자가 직접 모든 코드를 작성하는 일은 드뭅니다. 대부분 기존에 누군가 만든 코드(ex. 스택오버플로우에 있는 코드)를 참고하거나 동료 개발자 코드에서 힌트를 얻기도 하는데요. 보통 코드를 참고하려면 구글 검색을 하거나 ‘리포지토리(Repository)’에서 다른 개발자의 코드를 찾아봐야 합니다. GitHub Copilot은 이렇게 참고할 만한 코드를 검색하는 시간을 획기적으로 줄여주는 장점이 있습니다.

 

다만, 아직 인공지능 학습이 덜된 탓인지 깃허브 코파일럿은 한 번에 완벽한 코드를 제시하지는 못합니다. 간혹 AI가 개발자의 의도를 잘못 이해하기도 하고, 상당 부분 수정이 필요한 코드를 제시하기도 합니다. 따라서 개발자가 깃허브 코파일럿에서 제안된 코드를 정확히 이해하지 못하거나 잘못된 해석을 한다면 개발 과정에서 오히려 마이너스가 될 수도 있습니다.

 

 

깃허브 코파일럿과 개발 생산성

1) 깃허브 코파일럿은 누구에게 유용할까?

앞서 얘기했듯이, 인공지능이 제시한 코드를 제대로 이해할 수 없으면 깃허브 코파일럿을 사용하는 실익이 별로 없습니다. 마치, 스택오버플로우에서 이해하지도 못한 소스 코드를 ‘복사, 붙이기’ 하는 것과 비슷한 셈입니다. 따라서 개발 경험이 적은 주니어 개발자나 신규 프로젝트에서 새로운 언어를 학습하는 수준의 개발자에게 깃허브 코파일럿은 오히려 독이 될 가능성이 있습니다. 반면 해당 프로그래밍 언어에 익숙하거나 경험이 많은 시니어 개발자는 깃허브 코파일럿을 사용하여 개발 생산성을 눈에 띄게 높일 수 있습니다.

 

2) 개발 생산성 향상 도구

깃허브 코파일럿은 프로젝트 규모가 크든 작든 개발 생산성 향상 도구로 충분한 활용할 만합니다. 코드 작성 시간을 줄여줄 뿐만 아니라, 개발 과정에서 막혔던 부분에 대한 힌트도 빠르게 얻을 수 있기 때문인데요. 개인적인 경험으로도 깃허브 코파일럿을 사용했을 때 평소보다 최소 1.5배 정도는 개발 속도가 빨라지는 느낌을 받았습니다.

 

 

깃허브 코파일럿 사용 예시(JavaScript + VS Code)

1) 간단한 함수 만들기

깃허브 코파일럿 사용 예시로 간단한 JavaScript 함수를 만들어보도록 하겠습니다. 아래 GIF 이미지에서 볼 수 있듯이 함수명을 입력하면 그에 맞는 소스 코드를 깃허브 코파일럿이 제안하고, 탭(Tab)을 누르면 바로 코드가 적용됩니다. 주석 역시 같은 방식으로 소스 코드가 제시되는데요. 여러 가지 코드가 동시에 제시될 수 있으며, 이 경우에는 단축키(ex. Ctrl + Enter, Alt + [ 또는 Alt + ])를 사용하여 선택할 수 있습니다.

 

간단한 함수
<출처: 곰씨네 IT 블로그>

 

2) API 호출

이번에는 깃허브 코파일럿을 이용해서 jsonplaceholder라는 사이트의Fake API를 호출하는 코드를 만들어 보겠습니다. 아래 그림처럼 호출하려는 URL과 함수명을 작성하면, 깃허브 코파일럿에서 jsonplaceholder posts API를 호출하는 코드를 자동으로 생성합니다. 아쉽게도 아직 실제 개발 프로젝트에서 사용하려면 코드를 많이 손봐야 하지만, 깃허브 코파일럿을 통해 빠르게 API를 호출하는 자바스크립트 코드에 대한 힌트를 얻을 수 있는 것을 보여줍니다.

 

api 호출
<출처: 곰씨네 IT 블로그>

 

 

깃허브 코파일럿이 개발자 일자리를 위협할까?

깃허브 코파일럿이 출시되었을 때 ‘인공지능이 개발자의 일자리를 뺏지 않을까?’ 하는 우려가 있었습니다. 하지만, 개인적으로 지금까지 깃허브 코파일럿을 사용하면서 느낀 바로는 인공지능이 개발자의 일자리를 위협할 정도가 되려면 아직 한참 멀었다고 생각합니다. 개발자라는 직업이 단순히 코드를 짜는 일 외에도, 시스템 분석 및 설계, 데이터베이스, 네트워크, 보안, 비즈니스 커뮤니케이션 등등 많은 일들을 하기 때문인데요.

 

따라서 깃허브 코파일럿이 개발자를 완전히 대체하기보다 조력자(assistant) 정도의 역할을 이어가지 않을까 싶습니다. 다만, 단순 코딩 업무(ex. 간단한 function 개발 등)는 앞으로 깃허브 코파일럿이 차츰 대체해 나갈 것으로 예상됩니다.

 

깃허브 코파일럿은 수많은 개발자가 작성한 코드를 인공지능이 학습한 결과물입니다. 깃허브에서는 public한 소스 코드만 학습했다고 하지만, 여전히 다른 개발자가 만든 코드에 관한 저작권 문제 등 풀어야 할 숙제가 많아 보입니다. 다만 이런 부분들이 잘 해결된다면 앞으로 개발 생태계에 큰 영향을 줄 수 있을 것으로 보입니다.

 

 

깃허브 코파일럿의 미래

지금까지 깃허브 코파일럿에 대해서 알아보고 개발 생산성 측면에서 어떤 장단점이 있는지 살펴봤습니다. 과거에는 택시 운전기사들이 서울 시내 지리를 달달 외어서 운전하던 시절이 있었죠. 그런데 지금은 일반인 운전자들도 내비게이션 도움을 받아 서울 시내에서 손쉽게 목적지를 찾아갈 수 있습니다. 이처럼 깃허브 코파일럿도 전반적인 프로그래밍을 이해하는 개발자가 어떤 특정 언어의 문법을 달달 외우지 않고도 개발할 수 있게 도움을 줄 것으로 예상됩니다. 개인적인 생각으로는 깃허브 코파일럿 같은 인공지능을 잘 활용할 수 있는 능력이 개발자 역량 중 하나로 부각되는 시대가 올 것 같아 앞으로의 미래가 기대됩니다.

 

요즘IT의 모든 콘텐츠는 저작권법의 보호를 받는 바, 무단 전재와 복사, 배포 등을 금합니다.

좋아요

댓글

공유

공유

댓글 0
Developer, Blogger
198
명 알림 받는 중

작가 홈

Developer, Blogger
198
명 알림 받는 중
곰씨네 IT를 비롯하여 다양한 블로그를 운영 중인 개발자입니다. 2010년부터 LG CNS에서 소프트웨어 엔지니어로 근무하며, LG전자 물류 시스템 구축, 스마트 TV OS 개발, LG화학 모바일 프로젝트 등에 참여했습니다. 2017년 미국으로 이주해 프리랜서 개발자로 전향했으며, 현재는 AI와 머신러닝 분야로의 경력 확장을 위해 미국 매사추세츠 주립대에서 컴퓨터 공학 석사 과정을 병행하고 있습니다.

운영 중인 블로그
곰씨네 IT: https://gomcine.tistory.com
곰씨네USA: https://gomcineusa.tistory.com
코리얼티USA: https://korealtyusa.com

저서
개발자가 영어도 잘해야 하나요? (English for Developer)
http://gilbut.co/c/24026188iO
함께 스크랩한 콘텐츠
같은 분야를 다룬 콘텐츠
인기 있는 콘텐츠

좋아요

댓글

스크랩

공유

공유

지금 회원가입하고,
요즘IT가 PICK한 뉴스레터를 받아보세요!

회원가입하기
요즘IT의 멤버가 되어주세요! 요즘IT의 멤버가 되어주세요!
요즘IT의 멤버가 되어주세요!
모든 콘텐츠를 편하게 보고 스크랩할 수 있어요.
모든 콘텐츠를 편하게 보고 스크랩 하기
매주 PICK한 콘텐츠를 뉴스레터로 받을 수 있어요.
매주 PICK한 콘텐츠를 뉴스레터로 받기
로그인하고 무료로 사용하기