logo
logo
데브옵스
Github
분산 버전 관리 툴인 깃 저장소 호스팅을 지원하는 웹 서비스
사용 기업
이커머스
인공지능
교육
직장
금융/보험
패션
부동산/인테리어
소셜/컨텐츠
기타
모빌리티
여행
푸드테크
헬스케어
종합
블록체인
techstack-logo
트렌비
techstack-logo
슈퍼브에이아이
techstack-logo
클라썸
techstack-logo
플렉스
techstack-logo
렌딧
techstack-logo
딜리셔스
techstack-logo
파운트
techstack-logo
뤼이드
techstack-logo
직방
techstack-logo
에이블리
techstack-logo
클래스팅
techstack-logo
핀다
techstack-logo
큐피스트
techstack-logo
엔라이튼
techstack-logo
식스샵
techstack-logo
드림어스컴퍼니
techstack-logo
스푼
techstack-logo
클래스101
더 보기
기술 블로그 글
네이버
나만의 Visual Studio Code Copilot 지침 만들고 활용하기
코드 작성에 AI의 도움을 받을 수 있는 가장 유명한 도구 중 하나로, GitHub이 2021년 발표한 GitHub Copilot이 있습니다. 2024년 12월 GitHub Copilot for VS Code 무료 플랜을 제공하기 시작해,제한적(2k/월 코드 어시스트, 50건/월 채팅)이긴 하지만 누구나 활용할 수 있게 되었습니다.그런데 Copilot의 도움을 받으려면 프롬프트로 질의를 작성해야 하며, Copilot이 각자의 환경에 맞춰 답변하게 하려면 매번 프롬프트로 상황을 전달해야 합니다. 이는 매우 귀찮고 불편한 작업일 수 있습니다.이 글에서는 이러한 불편함을 없애고 개인별 환경 또는 프로젝트 환경에서 VS Code Copilot 지침을 만들고 이를 활용하는 방법을 간단한 예시와 함께 소개합니다.커스텀 지침커스텀 지침(custom instruction)을 미리 정의해 두면, Visual Studio Code(이하 VS Code) 내에서 Copilot이 답변할 때 이 지침을 따르도록 설정할 수 있습니다.프로젝트 저장소에 지침서 파일을 저장하면 해당 프로젝트에 참여하는 이들이 모두 동일한 지침에 따라 답변을 얻을 수 있고, VS Code 설정 파일인 settings.json 파일에 개인용 지침을 설정할 수도 있습니다.프로젝트 공통 지침프로젝트 공통 지침을 사용하려면 프로젝트의 .github/copilot-instructions.md 파일에 지침을 작성해 저장소에 푸시합니다.지침서 파일에는 다음과 같이 Copilot 채팅 질의 시 사용자의 질문을 보완하기 위한 컨텍스트 또는 관련 정보를 자연어 형태의 짧은 문장으로 작성합니다.We always write JavaScript with double quotes and tabs for indentation, so when your responses include JavaScript code, please follow those conventions.Our team uses Jira for tracking items of work. 하지만 지침에서 다음과 같이 외부 리소스를 참조하도록 요청하거나 특정 세부 정보 응답을 요청하면 제대로 동작하지 않을 수 있습니다.Always conform to the coding styles defined in styleguide.md in repo my-org/my-repo when generating code.Use @terminal when answering questions about Git.Answer all questions in the style of a friendly colleague, using informal language.Answer all questions in less than 1000 characters, and words of no more than 12 characters. 다음은 지침을 작성하지 않았을 때 Copilot 채팅 질의 답변입니다. 영어로 질의하면 Python 코드와 영어로 답변합니다.이제 다음과 같은 지침을 작성하
github
javascript
reactjs
무신사
무신사 X GitHub Copilot은 정말로 우리의 생산성을 높였을까?
“GitHub Copilot이 정말 개발 생산성을 높여줄까?”2024년 말, 회의실에서 이 질문을 마주했습니다.GitHub Copilot은 AI 기반 코딩 도구로 주목받았지만, 대부분의 평가는 개인적인 경험에 의존하고 있었습니다. 일부 개발자는 “코딩 속도가 빨라졌다”고 했고, 다른 이들은 “큰 차이를 못 느끼겠다”고 말했습니다. 그렇다면, Copilot이 실제로 개발 생산성을 높이는지, 데이터로 증명할 수 있을까?이 질문에 답하기 위해 직접 실험에 나섰습니다. 단순한 파일럿 테스트가 아닌, 30명의 개발자가 참여하는 데이터 중심의 검증 프로젝트를 설계했습니다.검증 방식은 두 가지였습니다.첫째, Cycle Time, PR 머지 속도, 리뷰 시간 등 핵심 지표를 추적해 Copilot 도입 전후의 변화를 분석했습니다.둘째, 개발자들의 실제 경험과 피드백을 수집하기 위해 심층 인터뷰와 설문조사를 병행했습니다.단순히 ‘Copilot이 좋다’는 결론이 아니라, ‘어떤 면에서, 얼마나 효과적인지’를 명확히 입증하고자 했습니다.이 글에서는 무신사에서 Copilot 도입을 어떻게 검증했는지, 어떤 데이터를 활용했으며, 다른 조직이 이를 어떻게 적용할 수 있는지 구체적으로 분석합니다.정말 도움이 될까? 다른 회사들은 뭐라고 할까?AI 기반 코드 자동 생성 도구는 개발자 생산성을 향상시키는 가능성을 보여주지만, 일부 기업 사례와 연구를 통해 Copilot의 단기적인 생산성 향상 효과는 확인되었습니다. 다만, 장기간 실무 환경에서의 코드 품질 변화, 유지보수 비용, 개발자 피로도에 대한 종합적인 데이터는 아직 축적 중입니다.GitHub 연구(2023): Copilot을 활용한 그룹이 55.8% 더 빠르게 개발 작업을 완료했으며, 경험이 적은 개발자일수록 효과가 더 컸음.롯데ON (2024): Copilot을 활용해 코드 자동 완성과 채팅 기능을 통해 코드 가독성과 개발 속도 향상을 경험. 특히, 코드 리팩토링과 코드 리뷰 기능을 적극 활용하여 개발 효율성과 코드 품질 향상에 기여.SK플래닛 (2024): Copilot을 백엔드, 프론트엔드, 데이터 엔지니어링 등 다양한 개발 업무에 적용. 코드 자동 완성과 코드 추천 기능을 활용하여 평균 개발 속도가 41.7% 향상. 또한, 데이터베이스 스키마 변경 작업 자동화로 작업 시간을 크게 단축.여기어때 (2024): Copilot을 도입 후, 자동 코드 생성 기능을 활용해 금융 데이터 분석 업무에서 생산성 향상을 경험. 그러나 과도한 자동 추천으로 인해 코딩 흐름이 끊기는 문제도 있음.Uplevel 연구 (2024): Copilot과 같은 AI 코딩 도구가 개발자의 인식과 달리 실제 생산성 향상에는 미미한 영향을 미친다는 연구 결과 발표. 또한, 이러한 도구들이 개발자의 번아웃 감소에도 큰 기여를 하지 않는다는 점을 강조.이러한 연구들에서 Copilot이 개발자들의 작업 속도를 향상시키고, 반복 작업을 줄이는 데 효과적일 수 있음을 시사하지만, 코드 품질 및 오류 발생에 대한 장기적인 검증은 부족하다는 점도 드러냈
github
SK플래닛
Microsoft-GitHub UNIVERSE24 Recap 서울 후기(발표 및 참여)
2024년 12월 6일 서울 광화문에서 있었던 'Microsoft-GitHub UNIVERSE24 Recap Seoul'에 발표자로 참여한 후기를 간략히 공유해 드립니다(이날 안과 바깥에서 모이셨던 모든 분들이 평화롭고 안전하게 귀가하셨길 진심으로 바랍니다).저희 회사에서는 AI-assisted Coding의 효과 검증을 위해 사용자 그룹을 구성하여 GitHub Copilot Business 버전을 업무에 활용하였고, 해당 사례를 블로그로 정리하여 지난 8월 SK 데보션과 당사 Tech Topic 블로그에 포스팅하였는데요(아래). 마침 GitHub APAC의 담당자께서 이 블로그를 보시고 발표 요청 연락을 주셨습니다!아시는 것처럼 매년 가을에는 미국 샌프란시스코에서 GitHub의 신기술을 발표하는 UNIVERSE 컨퍼런스가 열리는데요(https://githubuniverse.com/, 10월 또는 11월), 이후 서울을 포함한 전 세계 주요 도시에서 Recap 행사가 열립니다(12월 경). 2024년 서울 행사에서 고객 사례 중 하나로 'SK플래닛의 GitHub Copilot 활용 사례'를 발표해 줄 수 있는지 연락을 주셔서 기쁘게 수락하게 되었습니다.발표를 위해 내부 보고 등 일련의 절차를 밟았으며, GitHub에서 제공하는 예쁜 템플릿을 활용하여 발표를 준비하였습니다.연말이어서 판교에서 광화문까지 오는데 길이 꽤 막혔습니다. 조금 늦었지만 담당 매니저께서 전혀 부담 갖지 않도록 편하게 맞아 주셨고요 :) 빔프로젝트-노트북 셋업은 별도 리허설 없이 연결상태만 간단히 확인한 후 Microsoft 및 GitHub 엔지니어 분들과 함께 도시락을 먹었습니다. 모두 좋은 분들이었고 편하게 대해 주셔서 즐거운 점심 시간을 가졌습니다.굿즈(티셔츠와 간식)도 따로 챙겨주셨고, 개발자용 스티커와 담요 등 참석자에게 제공하는 선물도 잘 받았습니다 :)행사는 크게 다음과 같이 진행되었는데요,• UNIVERSE에서 소개된 신기술 소개 및 데모 (DevRel 및 엔지니어)• 국내 네임드 개발자의 발표 (아웃사이더 님)이날 소개되었던 기술 정리도 함께 하고 싶은데 너무 길어질 것 같아( 제가 MS나 GitHub DevRel이 되면(?) ) 연말에 조금 더 여유가 생기면 한번 시도해 볼까 합니다.이날 행사의 세부 주제와 연사는 여기를 참조하시기 바랍니다. => https://gh.io/universerecapkr24/발표의 기본적인 내용은 블로그 내용 중심으로 진행하되, 앞 부분에 다음 내용을 추가하였습니다.2022년부터 현재까지 Microsoft-GitHub과 당사와의 인연(!) 및 협업의 여정을 한 장의 장표로 정리하였습니다. 많은 도움을 주신 양 사 담당자 분들께 이 자리를 빌어 감사를 드립니다.본 발표 내용은 SK그룹의 'AI Vision'과도 결을 같이 한다는 것을 함께 설명하였는데요, 여기서는 간략하게 지난 11월 진행된 SK AI SUMMIT 2024를 통해 SK의 AI Vision이 공유된 것과, 이와 연계된 SK그룹 구성원 대상 다양한 AI 활용
github
현대자동차그룹
[디지털 트윈 기술 #5] Go Fiber Framework 를 활용한 동시성, 고성능 실시간 데이터 처리 back-end 서비스 개발 사례
인사말안녕하세요!! 현재 현대오토에버에서 디지털 트윈을 위한 Back-End Service 개발을 담당하고 있는 김중희 책임이라고 합니다. 이번에 소개해드릴 기술은 디지털트윈 에서 실제로 3D환경에서 오브젝트들을 움직이고 신호를 주기 위한 원천 데이터를 처리하는 Back-end서비스에 대한 내용입니다. 강력한 성능과 동시성을 확보하기 위해 Go언어를 차용하였고, goroutine을 적극적으로 사용하여 CPU 집약적인 작업을 동시에 처리 할 수 있었습니다. 언어에 대한 소개와 기술적인 아키텍처를 중심으로 소개 드리겠습니다.프로젝트 소개1. 개발 배경다양한 설비 및 이동체의 실시간(low-latency) 데이터 처리를 확보 하면서 확장 가능한 백엔드 서비스 개발이 필요2. 주요 목표백엔드 서비스 개요자동 창고 및 이동체 등 다양한 Raw 데이터를 IoT platform 을 통해 실시간 수집 및 처리할 수 있는 서비스 개발을 고려하였습니다.서비스 구축시 해결해야 할 주요 문제IoT 플랫폼 혹은 다양한 데이터를 제공하는 sender가 계속 확장 될 수 있는 구조 고려 하였습니다.Websocket 통신 종료 시 해당 context를 기반으로 연결 종료 처리 및 자원 해제될 수 있는 구조를 고려하였습니다.모든 Websocket 통신이 서로 독립적으로 동시성을 가지면서 연결되도록 개발하였습니다.실시간 데이터의 손실이 최대한 없는 고가용성 확보하였습니다.기대 효과Low-Latency 실시간 데이터 처리 서비스를 제공할 수 있습니다.실시간 데이터를 활용하여 3D엔진 (Unreal Engine)에서 객체의 다양한 이동 및 모션을 실시간 동기화 할 수 있습니다.기술 스택1. 기술 스택 및 버전기술버전선정 이유Golang1.22.6고성능, 동시성 처리 (goroutine)Fiber Framework2.52 (v2)fasthttp 기반 고성능 프레임워크Redis7.2.5고성능 Key-value In-memory cache2. Go 언어 선택 이유동시성을 유지하면서 가볍고 고 성능 서비스를 계속 유지해야 했습니다. go의 goroutine을 활용하면 이 문제를 보다 쉽게 해결할 수 있습니다.강력한 정적 타입 : 런타임 안에서 강력한 타입 체크 및 미 사용 변수를 체크하여, 메모리 관리 및 오류 발생을 최소화 및 안정성이 향상되어 오랜 시간 서비스를 하여도 문제 없이 안정적으로 운영할 수 있습니다.3. 컴파일 시 발생하는 오류 및 올바른 사용법  컴파일 에러 발생 케이스func unusedVariables() { x := 10 // 컴파일 에러: x declared but not used} 올바른 사용법func unusedVariables() { x := 10 fmt.Println(x) // 변수 사용 // 또는 _ := 10 // 블랭크 식별자 사용}타입 불일치 연산 컴파일 에러 케이스func typeMismatch() { intNum := 42 // int floatNum := 3.14 // float64 // 컴파일 에러: invalid operation: mismatched types int and float64 result := intNum + floatNum // 컴파일 에러: cannot use floatNum (type float64) as type int var sum int = intNum + floatNum // 컴파일 에러: cannot use intNum (type int) as type float64 var total float64 = floatNum * intNum} 올바른 사용법func correctTypeCasting() { intNum := 42 // int floatNum := 3.14 // float64 // int를 float64로 변환하여 계산 result1 := float64(intNum) + floatNum // 45.14 // float64를 int로 변환하여 계산 (소수점 버림 주의) result2 := intNum + int(floatNum) // 45 // 모든 숫자를 float64로 통일 var total float64 = float64(intNum) * floatNum // 131.88}함수 호출 타입 체크함수 호출 예시// 함수 정의func calculateArea(width float64, height float64) float64 { return width * height}// 잘못된 호출area := calculateArea(42, 10) // int를 float64에 바로 전달 불가// 올바른 호출area := calculateArea(float64(42), float64(10))슬라이스 타입 체크타입이 다른 슬라이스 간 연산numbers := []int{1, 2, 3}texts := []string{"a", "b", "c"}// 컴파일 에러 케이스numbers = texts // 다른 타입의 슬라이스는 할당 불가numbers = append(numbers, "d") // string을 int 슬라이스에 추가 불가구조체 필드 타입 체크구조체 정의type User struct { ID int Name string Age int} 컴파일 에러 케이스user := User{ ID: "123", // string을 int에 할당 불가 Email: "john@example.com", // 존재하지 않는 필드} 올바른 사용법user := User{ ID: 123, Name: "John", Age: 25,}인터페이스 구현 체크인터페이스 정의와 구현type Writer interface { Write([]byte) (int, error)}// 잘못된 구현type MyWriter struct{} // Write 메서드 없음// 올바른 구현type MyWriter struct{}func (w MyWriter) Write(data []byte) (int, error) { return len(data), nil}4. 가비지 컬렉션C, C++ 계열에서 많이 발생하는 메모리 누수 문제를 해결할 수 있는 가비지 컬렉션 기능이 강력하며, 메모리 오버 플로우 문제
fiber
github
go
nodejs
redis
연관 기술 스택
techstack-logo
Bitbucket
Copyright © 2025. Codenary All Rights Reserved.