AI는 코딩을 더 쉽고 재미있게 만듭니다

2025년 2월 19일

작성자

Tim Mucci

Writer

Gather

AI로 개선되는 개발자 경험

생성형 AI(gen AI)는 영화 제작 방식, 마케팅 방식, 게임 플레이 방식을 변화시키고 있습니다. 많은 미디어의 관심은 디지털 트랜스포메이션, 콘텐츠 제작 및 생산성 향상 측면에서 Gen AI가 무엇을 할 수 있는지에 집중되어 있지만, 코드 작성을 더 만족스럽고 재미있게 만드는 방법에 대해서는 관심이 적습니다.

코딩 어시스턴트 역할을 하는 생성형 AI는 소프트웨어 엔지니어가 작업을 더 빨리 수행할 수 있도록 돕는 것만이 아닙니다. 또한 개발자 만족도와 참여도를 높이고 있습니다. 개발자들은 생성형 AI를 사용하여 상용구 코드를 작성하고 기본 형식을 정의하여 문제 해결, 새로운 로직 생성, 고유한 시스템 설계와 같은 창의적인 측면에 더 많은 시간을 집중할 수 있습니다. 이러한 고차원적이고 창의적인 작업이야말로 개발자들이 가장 즐기는 부분입니다.

McKinsey의 연구에 따르면 생성형 AI 도구를 사용하는 개발자는 직장에서 전반적인 행복, 성취감 및 몰입 상태에 도달할 수 있는 능력을 보고할 가능성이 두 배 이상 높았습니다.

전자상거래 플랫폼용 새 웹 애플리케이션을 구축하는 개발자가 있다고 상상해 보세요. 개발자는 사용자 환경을 설계하고 추천 엔진 및 동적 가격 책정과 같은 기능을 구현할 수 있습니다. 하지만 개발자가 디자인의 흥미로운 부분에 착수하기 전에 단순하고 반복적인 작업을 먼저 처리해야 합니다.

백엔드를 설정해야 하며, 이전에 수십 번 작성한 것과 동일한 상용구 코드를 작성하고, 초기화를 실행하고, 기본 경로를 정의하고, 미들웨어를 구성해야 합니다. 프로젝트에 고유한 요소는 없지만 각 요소는 애플리케이션에 필요합니다. 기초 작업이 끝나면 데이터베이스에 대한 연결을 설정하고 제품, 고객 및 주문에 대한 스키마와 함께 데이터베이스 드라이버를 설정해야 하며, 그 외에도 코딩과 개발과는 관련 없는 작업을 수없이 수행해야 합니다.

개발자는 플랫폼에 개성을 불어넣고 사용자에게 즐거움을 선사할 핵심 기능을 개발하는 것이 설레겠지만, 실제로는 반복 작업이 프로젝트 일정에서 많은 부분을 차지합니다. 기반을 탄탄하게 다지는 과정은 꼭 필요하지만, 반복적인 작업은 창의적인 코딩 작업에 비해 지루하고 귀찮게 느껴지기 때문에 개발자의 생산성을 저하시킬 수 있습니다

트랙에서 굴러가는 공의 3D 디자인

최신 AI 뉴스 + 인사이트 


주간 Think 뉴스레터에서 AI, 클라우드 등에 대한 전문적으로 선별된 인사이트와 뉴스를 발견하세요. 

코딩의 고유한 과제

코딩은 시간이 많이 걸리고 오류가 발생하기 쉽습니다. 고품질의 결과를 얻으려면 상당한 시간과 리소스가 필요합니다. 연구에 따르면 개발자는 업무 시간 중 실제 코딩에는 하루 평균 약 1시간만을 사용하고 있으며, 나머지 대부분의 시간은 반복적이고 차별성 없는 작업에 소모합니다. 이러한 작업에는 주로 백엔드 설정, 기존 코드 수정, 초기화 작업, 기본 라우팅 정의처럼 반복적이고 정형화된 작업이 포함됩니다. 예를 들어, 프로그래머의 일상적인 하루는 코드 리뷰나 풀 리퀘스트 검토로 시작될 수 있습니다. 그런 다음 품질 보증 팀에서 보고한 버그를 해결한 다음 배포 계획을 초안을 작성하는 등의 작업을 수행할 수 있으며, 이 시점까지 새로운 코드는 한 줄도 작성하지 못했습니다.

IBM의 데이터 과학자 안나 구토스카(Anna Gutowska)는 "생성형 AI를 활용하면 개발자가 소프트웨어 개발에 집중할 시간을 빼앗는 지루하고 반복적인 작업을 자동화할 수 있어요."라고 말합니다. "예를 들어, 아침마다 자동으로 스크립트를 실행하고 소프트웨어의 상태 점검 보고서를 생성하는 일을 봇에게 맡길 수 있죠. 그러면 개발자가 수동으로 스크립트를 실행하는 데 들이는 시간을 줄이고, 더 중요한 업무에 집중할 수 있습니다."

개발자들은 React, Kubernetes, Flutter와 같이 끊임없이 변화하는 기술과 프레임워크를 따라잡아야 하는 어려움도 겪고 있습니다. 소프트웨어 개발 환경이 빠르게 진화하고 있기 때문에, 지속적으로 따라잡기란 결코 쉬운 일이 아닙니니다. 이러한 기술 발전을 따라잡으려면 계속해서 배우고 실험하는 데 시간을 들여야 하므로, 정작 창의적이고 보람 있는 개발에 쓸 수 있는 시간은 줄어들게 됩니다. 여러 업무를 동시에 수행하면서 견고하고 오류 없는 코드를 만들어야 하는 압박까지 더해지면 코딩은 스트레스를 많이 받는 작업이 될 수 있습니다.

생성형 AI 도구는 자동화, 통합 및 모니터링을 지원하여 DevOps 워크플로에서도 중요한 역할을 합니다. 생성형 AI는 단순히 코딩을 돕는 것을 넘어, 개발자가 데이터 분석을 수행하고 복잡한 데이터 세트를 해석하여 아키텍처 결정과 시스템 최적화가 미치는 영향을 더 명확히 파악할 수 있도록 지원합니다.

지루한 일을 좋아하는 AI

AI는 지루한 작업을 '좋아'하지 않을 수도 있지만 복잡한 패턴을 찾고 복제하는 데 탁월하므로 코딩의 반복적인 측면을 자동화하는 데 이상적인 솔루션입니다. 기반이 되는 상용구 코드 생성과 같은 지루하지만 필요한 작업을 생성형 AI 도구를 통해 몇 초 만에 완료할 수 있습니다. 또한 AI는 엔드포인트를 자동 생성하고, 인증을 처리하고, 요청을 구조화하고, 수동 코딩 작업을 줄여 애플리케이션 프로그래밍 인터페이스(API) 통합을 지원할 수 있습니다. Wired에서 설명한 또 다른 예는 SWE-agent라는 AI 도구입니다. 이 AI 도구는 GitHub 리포지토리의 버그를 식별하고 관련 파일을 찾고 코드를 올바르게 수정하여 아마추어 개발자의 잠재적 디버깅 시간을 절약했습니다.

AI 도구 중에는 단순한 어시스턴트를 넘어 전문가 수준의 멘토에 가까운 도구도 있습니다. 생성형 AI 시스템은 실시간으로 설명, 예시, 가이드를 제공하여 개발자가 문제 해결에 쏟는 시간을 줄이고 혁신에 더 집중할 수 있도록 도와줍니다. 이러한 변화 덕분에 개발자들은 반복적인 문제 해결로 인한 인지적 부담을 덜고, 창의적인 솔루션을 설계하거나 시스템 아키텍처를 개선하는 등 더 수준 높은 코드 작성에 집중할 수 있습니다. AI는 코드 변경 사항을 자동으로 탐지하고 개선하여 회귀를 방지하고 새로운 구현이 모범 사례에 부합하도록 합니다.

“IBM watsonx Code Assistant는 잠재적인 취약점, 메모리 누수, 잘못된 코딩 관행 등을 여러 건 찾아내고 개선을 위한 권장 사항까지 제시했습니다."-IBM watsonx Code Assistant에 대한 고객 피드백

 

개발자의 학습도 가속화하는 생성형 AI 개발자들이 새로운 프로그래밍 언어나 프레임워크, 패러다임을 빠르게 익힐 수 있도록 돕고, 복잡하거나 낯선 코드베이스에 대한 인사이트도 제공합니다. 특히 신입 개발자들에게 큰 도움이 됩니다.

IBM의 풀스택 개발자 애셔 스콧(Asher Scott)은 watsonx Code Assistant에 대해 "처음엔 큰 기대가 없었는데, 막상 써보니 생각보다 훨씬 좋아서 놀랐어요."라고 말합니다. "덕분에 제 기술을 한 단계 업그레이드할 수 있었습니다."

신입 개발자들은 생산성과 기술 습득이 크게 향상되어 기존 방식보다 더 빠르게 전문성과 자신감을 키울 수 있다고 보고합니다. AI는 진입 장벽을 제거하고 학습 프로세스를 간소화함으로써 모든 수준의 개발자가 더 흥미롭게 문제를 해결할 수 있도록 지원합니다.

직무 만족도 및 유연성

KPMG 설문조사에 따르면 설문에 응답한 프로그래머의 절반은 AI와 자동화가 생산성을 높이고 새로운 기회를 열어주는 등 자신의 커리어에 긍정적인 영향을 미쳤다고 생각합니다. 마찬가지로, OpenAI ChatGPT 설문조사에 따르면 개발자의 50% 가 AI를 사용하여 생산성이 향상되었다고 보고했으며, 23% 는 상당한 개선을 경험했습니다.

GitHub 설문조사에 따르면 이러한 생산성 향상은 개발자의 워크플로에 더 큰 효율성을 제공합니다. AI 코딩 도구를 사용하는 개발자들은 반복적이고 지루한 작업을 자동화하고, 뻔한 코드가 아닌 솔루션 설계에 집중할 수 있어 업무 만족도가 높아졌다고 응답했습니다. 코드 어시스턴트는 정신적 부담을 줄이는 데 도움이 되므로 잠재적으로 번아웃을 예방할 수 있습니다. 개발자가 성능 표준을 더 쉽게 충족하여 코드 품질이 향상되고 아웃풋이 빨라지며 인시던트가 줄어들도록 도와줍니다.

생성형 AI가 업무 만족도에 긍정적 영향을 주는 가장 큰 이유는, 유용한 인사이트를 제공하고 지루한 개발 업무의 흐름을 간소화해주기 때문입니다. 예를 들어, watsonx Code Assistant(WCA), GitHub Copilot, SWE-agent와 같은 AI 기반 개발 도구들은 실시간 코드 생성과 디버깅, 최적화 영역에서 강력한 성능을 입증했습니다.이러한 효율성은 좌절감을 줄여줄 뿐만 아니라 개발자, 특히 신입 개발자가 더 복잡하고 보람 있는 문제 해결에 집중할 수 있게 해줍니다. AI 기반 도구는 일상적인 작업을 자동화함으로써 기능을 향상시켜 개발자가 반복적인 코딩이 아닌 혁신에 집중할 수 있도록 도와줍니다.

GitHub에 따르면, 설문에 참여한 개발자의 57%는 AI 코딩 도구를 사용하면서 프로그래밍 언어 능력을 키울 수 있었던 점을 가장 큰 이점으로 꼽았으며, 그다음으로는 생산성 향상이 뒤를 이었습니다. 이는 개발자들이 AI 코딩 도구 사용을 업무와 별개로 학습과 자기계발을 위한 새로운 과제를 추가하는 것이 아니라, 일하면서 자연스럽게 스킬을 향상시키는 방식으로 여긴다는 것을 보여줍니다.

생성형 AI는 실시간 예시와 맥락에 맞는 가이드를 제공함으로써 신입 개발자의 빠르게 역량을 개발하고 재교육을 완료해 팀에 더 빨리 기여할 수 있도록 도와줍니다. WCA를 사용하면 메인프레임 현대화나 Java™ 마이그레이션과 같이 복잡한 엔터프라이즈 개발 환경에서 일하는 개발 팀이 지루한 코드 변환 작업을 자동화하고, AI 기반의 모범 사례 인사이트도 얻을 수 있습니다. 덕분에 신입 개발자들은 업무를 진행할 때마다 선임 개발자의 도움을 자주 받지 않아도 되므로 더 빠르게 자신감을 키우고 독립적으로 일할 수 있게 됩니다.

AI는 개발자가 프로토타이핑 및 혁신에 접근하는 방식도 변화시키고 있습니다. 이전에는 몇 시간씩 수작업으로 코딩해야 했던 작업을 이제 단 몇 분 만에 완료할 수 있습니다. 예를 들면 개발자가 새로운 기능을 설계할 때 생성형 AI를 활용해 초안을 작성하고 빠르게 수정 및 개선한 뒤, 이를 전체 프로젝트에 손쉽게 통합할 수 있습니다. 이렇게 작업 주기가 빨라지면 더 많은 실험과 창의성을 발휘할 여유가 생기는데, 사실 이는 소프트웨어 개발에서 가장 보람 있고 즐거운 부분이기도 합니다.

개발자는 일상적인 작업을 자동화함으로써 원격 또는 비동기식 작업 환경에 더 쉽게 적응할 수 있습니다. 또한 AI 도구는 팀원들이 쉽게 검토하고 이해할 수 있는 코드 추천과 설명을 제공함으로써 협업의 질을 높이는 데에도 도움을 줍니다. 이러한 개선은 개발자 경험을 더욱 긍정적으로 바꿔줍니다. 소프트웨어 개발이 단순히 생산성만 높아지는 게 아니라 현대 업무 환경의 다양한 요구에 맞춰 더 유연하게 적응할 수 있게 되므로 결과적으로 업무 만족도와 워라밸 향상에도 기여합니다.

생성형 AI 도구는 개발자들이 자신의 생산성을 측정하고 개선할 수 있도록 관련 메트릭을 제공하여 기술 역량을 지속적으로 발전시키는 데 도움을 줍니다. 마찬가지로, 조직은 새로운 기술을 효과적으로 채택하고 AI 통합의 전체 영향을 평가하는 데 필요한 지식을 갖추게 됩니다. 이는 결과적으로 프로그래머들 사이에서 지속적인 학습과 혁신의 문화를 조성합니다.

애플리케이션 개발

시작하기: 클라우드에서 기업용 애플리케이션 개발

이 영상에서 Peter Haumer 박사는 IBM Z Open Editor, IBM Wazi 및 Zowe 등 다양한 구성 요소와 사례를 시연하며 오늘날 하이브리드 클라우드에서의 최신 기업용 애플리케이션 개발이 어떤 모습인지 설명합니다. 

인간의 손길은 대체할 수 없습니다

인간의 전문성은 여전히 소프트웨어 개발 과정에서 필수적인 요소입니다. AI는 버그를 식별하고 수정안을 제안할 수 있지만, 숙련된 개발자의 세밀한 이해와 직관은 갖추지 못했습니다. 인간은 코드의 의도를 파악하고, 비즈니스 목표와의 정합성을 평가하며, 조직의 맥락을 반영하여 프로젝트 요구 사항을 충족하도록 조정하는 데 더 뛰어난 역량을 갖추고 있습니다. 기계는 미묘한 균형을 해석하거나 모호한 시나리오를 탐색하는 데 어려움을 겪기 때문에 인간의 판단이 꼭 필요합니다.

생성형 AI 기술을 도입하는 데 어려움이 없었던 것은 아닙니다. 이 기술의 영향은 경험 수준에 따라 다르게 나타납니다. 신입 개발자는 AI의 도움을 받아 더 빠르게 학습하고 기여할 수 있기 때문에 가장 큰 혜택을 누리는 경우가 많습니다. 이들에게 AI는 지식의 격차를 메우고 성장을 가속화하는 멘토 역할을 합니다. MIT Sloan은 반대로 고참 개발자들은 약 8%~13%의 적은 이익을 얻었다고 보고했습니다. 이러한 결과가 고참 개발자들의 전문성이 기술을 앞지르기 때문인지, 아니면 AI를 워크플로우에 통합하는 것에 대한 거부감 때문인지는 아직 확실하지 않습니다.

AI 지원 코딩의 또 다른 문제는 기술적 부채의 위험입니다. 빠른 해결을 위해 AI에 지나치게 의존하면 단기적인 편의는 얻을 수 있지만, 편법이 누적되면 시간이 지나면서 결국 해결하기 어려운 장기적인 복잡성을 초래할 수 있습니다. 또한, 일부에서는 AI 기반 코딩 도구가 개발자들의 기술 저하를 초래할 수 있다는 우려도 있습니다. 자동화에 지나치게 의존하면 문제 해결 능력이나 코딩 역량을 스스로 갈고닦는 기회가 줄어들 수 있기 때문입니다. 비판적 사고와 실전 코딩 역량이 약화되면 개발자들이 향후 중요한 고난도 문제를 해결하는 데 어려움을 겪을 수 있습니다.

그러나 AI 코딩 도구는 인간 개발자를 대신하는 것이 아니라 인간 개발자와 협업할 때 가장 강력합니다. 생성형 AI는 워크플로우를 가속하고 반복적인 작업을 자동화할 수 있지만, 그 진정한 가치는 인간의 전문성을 강화하는 데 있습니다. 이를 통해 개발자들은 창의적인 문제 해결, 아키텍처 설계, 혁신적인 아이디어에 더 집중할 수 있습니다.

좋은 예로 모로코의 IT 솔루션 제공업체 rKube가 있습니다. 이 회사는 IBM의 watsonx Code Assistant를 활용해 Java 애플리케이션을 현대화했습니다. 코드 변환을 자동화함으로써 개발자들은 수작업 리팩토링에서 벗어나 더 가치 있는 문제 해결에 집중할 수 있었으며, 결과적으로 워크플로가 더욱 효율적으로 개선되고 개발자들의 동기부여도 높아졌습니다.

관련 솔루션
AI 기반 애플리케이션 개발

Watsonx.ai는 애플리케이션 개발 팀이 워크플로에 AI를 원활하게 통합할 수 있도록 지원합니다. 이 포괄적인 툴킷은 모델 생성에서 배포에 이르기까지 전체 AI 라이프사이클를 지원합니다.

watsonx.ai 살펴보기
IBM Z Development and Test Environment

x86 하드웨어에서 메인프레임 애플리케이션 개발, 테스트, 데모, 교육을 위한 플랫폼을 사용합니다.

Z 개발 환경 살펴보기
모바일 클라우드 컴퓨팅 솔루션

앱을 신속하게 설계하고 프로토타입을 제작하여 시장에 쉽게 출시할 수 있는 IBM의 모바일 앱 개발 플랫폼에 대해 알아보세요.

모바일 클라우드 살펴보기
다음 단계 안내

IBM Cloud Application Development Consulting Services는 클라우드 전략을 간소화하기 위한 전문가 지침과 혁신적인 솔루션을 제공합니다. IBM의 클라우드 및 개발 전문가와 협력해 애플리케이션을 현대화, 확장, 가속화하여 비즈니스에 혁신적인 결과를 제공하세요.

애플리케이션 개발 서비스 살펴보기 무료로 IBM Cloud에서 구축 시작하기