AI 시대, 개발의 재미를 잃었다면? AI 활용법을 통해 다시 찾자!

by DD
2개월 전
조회수 78

AI 코드 어시스턴트(Code Assistant)의 등장으로 개발 생산성이 향상되었지만, 개발에 대한 흥미가 감소하는 경험을 함

AI가 단순 반복 작업을 대체하면서 개발 공부의 의미(Meaning of Studying)에 대한 의문을 품고, 개발자 역할 변화에 대한 고민 시작

AI를 활용한 테스트 코드 자동화(Test Code Automation), API 문서 자동화(API Documentation Automation) 등에서 새로운 재미를 발견

AI의 한계와 개발자의 역할: AI가 해결하지 못하는 1%의 디테일을 채우기 위해 개발 지식의 중요성(Importance of Development Knowledge) 강조

AI 고도화 과정에서 개발 방식과 유사한 점을 발견하고, AI 활용 능력(AI Utilization Skill)을 통해 새로운 재미를 찾음

AI 코드 어시스턴트(Code Assistant)의 등장과 개발자의 심리적 변화

본문에서는 AI 코드 어시스턴트(Code Assistant)의 등장으로 개발 생산성이 향상되었지만, 개발에 대한 흥미가 감소하는 경험을 이야기한다. AI가 단순 반복 작업을 대체하면서 개발 공부의 의미(Meaning of Studying)에 대한 의문을 품고, 개발자 역할 변화에 대한 고민을 시작한다.

과거: 복잡한 문제를 해결하기 위해 지식을 습득하고, 꼬리에 꼬리를 무는 개념들을 학습하며 재미를 느낌

현재: AI가 대부분의 작업을 처리하면서, 개발 지식의 중요성(Importance of Development Knowledge)에 대한 의구심 발생

미래: AI가 모든 것을 처리하는 시대가 온다면, 개발 지식은 중요하지 않을 수 있다는 불안감

AI를 활용한 테스트 코드 자동화(Test Code Automation)의 경험

저자는 AI를 활용하여 테스트 코드 자동화(Test Code Automation)를 시도하고, 긍정적인 결과를 얻었다. 특히, 테스트 코드 작성 경험이 부족했음에도 불구하고, AI를 통해 UI 라이브러리(UI Library)의 공통 컴포넌트 테스트 코드를 순식간에 생성했다.

프롬프트 엔지니어링(Prompt Engineering): AI가 원하는 결과를 얻기 위해 구체적인 요구사항(Specific Requirements)을 제시하고, 프롬프트 규칙 파일을 작성

테스트 코드 일관성 확보: 테스트 코드의 일관성을 유지하기 위해 프롬프트 규칙(Prompt Rules)을 정리

자동화의 확장: UI 컴포넌트 외에도 비즈니스 로직(Business Logic)이 결합된 컴포넌트, E2E 테스트(End-to-End Test)까지 자동화 시도

API 문서 자동화(API Documentation Automation)를 통한 생산성 향상

저자는 스웨거(Swagger) 문서를 기반으로 API Path, Request/Response Model, 데이터 패칭 함수(Data Fetching Function) 등을 자동화하여 생산성을 향상시켰다. 기존에는 swagger-typescript-api 라이브러리를 사용하여 모델을 생성했지만, 데이터 패칭 함수는 직접 작성해야 했다.

Swagger MCP 활용: 데이터 패칭 함수(Data Fetching Function)와 API EndPoint Path를 자동 생성하고, 기존 API 수정 사항 반영

생산성 향상: 자동화를 통해 반복적인 작업(Repetitive Tasks)을 줄이고, 개발 시간을 단축

자동화의 확장: 컴포넌트 스토리북(Storybook) 작성, GitHub PR 코드 리뷰(Code Review) 자동화 등 다양한 영역으로 확장 가능성 제시

AI 고도화 과정에서 발견한 개발 방식과의 유사성

저자는 AI를 활용하여 테스트 코드 자동화(Test Code Automation) 및 API 문서 자동화(API Documentation Automation)를 진행하면서, AI를 효과적으로 사용하기 위한 노력을 기울였다. 이 과정에서 개발 방식과 유사한 점을 발견하고, AI 활용에 대한 새로운 재미를 느꼈다.

프롬프트 엔지니어링(Prompt Engineering): AI가 원하는 결과를 얻기 위해 구체적인 요구사항(Specific Requirements)을 제시하고, 프롬프트 규칙 파일을 작성

개발자의 사고 방식: AI도 코드를 작성하는 것처럼, 논리적으로 명확한 규칙을 정해주면 더 잘 작동

AI 활용 능력: 개발자의 사고 방식을 탑재하여 AI를 활용하면 더욱 효과적으로 사용할 수 있으며, 고도화 과정에서 재미를 느낄 수 있음

AI 시대, 개발자의 역할과 1%의 디테일

저자는 AI가 개발의 많은 부분을 대체하더라도, 개발자의 역할은 여전히 중요하다고 강조한다. AI가 완벽하지 않기 때문에, 1%의 디테일을 채우기 위해 개발 지식과 코딩 실력을 향상시켜야 한다고 주장한다.

AI의 한계: AI는 아직 크리티컬한 버그(Critical Bugs)를 만들 수 있으며, 모든 문제를 해결할 수 없음

개발자의 역할: AI가 해결하지 못하는 1%의 디테일을 채우기 위해, 개발 지식을 쌓고 코딩 실력을 향상

T자형 인재: AI를 통해 다양한 분야에 대한 지식을 쉽게 습득하고, 한 분야에 대한 깊이 있는 지식을 쌓는 T자형 인재로 성장

AI 덕분에 개발이 쉬워졌고, 재미는 없어졌다.