AI 열풍을 넘어: 비(Non)-AI 엔지니어링 프로젝트 탐구

거의 모든 새로운 소프트웨어 발표가 "AI 기반"이라는 말로 시작하는 시대에, 전통적인 엔지니어링 과제에 뿌리를 둔 프로젝트를 찾는 것은 점점 더 어려워지고 있습니다. "AI 슬롭(AI slop)"의 포화 상태부터 래퍼(wrapper)의 확산에 이르기까지, 논리, 아키텍처, 시스템 설계를 통해 구체적이고 실질적인 문제를 해결하는 소프트웨어 개발의 핵심은 종종 묻히곤 합니다.

최근 Hacker News에서의 커뮤니티 토론은 개발자들이 LLM 트렌드를 쫓지 않을 때 무엇을 만드는지에 대해 파헤쳐 보았습니다. 그 결과, 개발자 경험을 개선하고, 인프라를 최적화하며, 틈새 시장이지만 고통스러운 현실 세계의 문제를 해결하는 데 집중하는 "비(Non)-AI" 프로젝트들의 활기찬 생태계가 드러났습니다.

현실 세계의 마찰 해결

가장 설득력 있는 프로젝트 중 다수는 특정한, 좌절감을 주는 경험을 해결하려는 욕구에서 탄생합니다. 예를 들어, 미국 비자 신청 프로세스는 국무부의 CEAC 포털이 빈번하게 타임아웃을 발생시키고 사용자의 진행 상황을 손실하게 만들어 악명 높게 어렵습니다. 이를 해결하기 위해 한 개발자는 fillvisa.com라는 100% 무료 DS-160 작성 도구를 만들었습니다. 데이터 입력을 위한 편안한 인터페이스와 공식 포털에 자동 완성 기능을 제공하는 북마크렛(bookmarklet)을 제공함으로써, 이 도구는 데이터가 사용자의 브라우저를 벗어나지 않도록 하면서도 수백만 명의 신청자들에게 높은 마찰을 유발하는 문제를 해결합니다.

마찬가지로, 일부 개발자들은 물리적 내비게이션의 "플로우 상태(flow state)"에 집중하고 있습니다. 한 제작자는 경로가 더 오래 걸리더라도 교통 체증을 피하는 내비게이션 앱과, 신호등을 피하도록 특별히 설계된 자전거 내비게이션 앱을 포함한 지도 관련 도구 모음을 공유했습니다. 이러한 프로젝트들은 가장 빠른 경로의 단순한 효율성보다는 여정의 심리적 경험을 우선시합니다.

인프라 및 저수준 시스템

고수준 AI 애플리케이션이 헤드라인을 장식하고 있는 동안, 스택의 깊은 곳에서는 상당한 작업들이 진행되고 있습니다:

  • 스트리밍 최적화: OBS (Open Broadcaster Software) 내에서 WebRTC를 활용하여 스트리밍을 더 저렴하고, 더 프라이빗하며, 더 낮은 지연 시간으로 만들기 위한 노력이 진행 중입니다. 이는 라이브 방송의 오버헤드를 줄이기 위해 Pion 라이브러리를 깊이 있게 파고드는 작업을 포함합니다.
  • 데이터 관리: 범용 객체 저장소의 개발이 계속되고 있습니다. Didgets와 같은 프로젝트는 전통적인 계층적 폴더 구조와 관계형 테이블, 그리고 반구조화된 NoSQL 데이터를 결합한 "멀티모달" 데이터 관리 시스템을 구축하는 것을 목표로 합니다.
  • 오디오 프로세싱: "베드룸 프로듀서(bedroom producer)" 영역에 있는 사람들에게, 통화 중 실시간 오디오 보정은 흔한 고통 지점입니다. 이는 macOS 메뉴 바 앱인 Klaar의 탄생으로 이어졌습니다. 이 앱은 Digital Signal Processing (DSP)을 위한 앱으로, 사용자가 OBS와 루프백 드라이버를 거치는 번거로운 워크플로우를 거치지 않고도 압축(compression) 및 EQ와 같은 오디오 효과를 적용할 수 있게 해줍니다.

개발자 경험 (DX) 향상

개발자 도구는 시각화와 모듈화에 집중하며 혁신의 비옥한 토양으로 남아 있습니다:

  • 코드베이스 시각화: DevLens는 JavaScript, React, Next.js, Node.js를 위한 지능형 코드베이스 시각화 도구를 제공하여, 아키텍처를 가시화함으로써 온보딩과 PR 리뷰를 단순화하는 것을 목표로 합니다.
  • 풀스택 라이브러리: 단순한 백엔드 라이브러리를 넘어, 일부 개발자들은 "풀스택" 라이브러리를 위한 툴킷을 구축하고 있습니다. 예를 들어, Fragno 프로젝트는 프론트엔드 훅(hooks), 백엔드 라우트(routes), 데이터베이스 스키마를 하나의 패키지로 묶습니다. 이를 통해 Resend 웹훅을 처리하고 스레드 정보를 사용자의 데이터베이스에 직접 저장하는 이메일 라이브러리와 같이 더 완전한 통합을 가능합니다하게 합니다.

AI를 제품이 아닌 도구로 사용하기

이러한 토론에서 흥미로운 뉘앙스는 AI를 사용하는 것과 AI 제품을 만드는 것 사이의 차이입니다. 여러 개발자들은 자신들의 최종 제품이 "AI 도구"는 아니지만, 빌드 프로세스나 프로토타입 재구축을 가속화하기 위해 AI 지원(예: Claude)을 사용했다고 언급했습니다.

이는 개발자의 워크플로우에 변화가 생겼음을 시사합니다: AI는 소프트웨어 자체의 주요 기능이라기보다는, 창조의 행위 자체를 위한 유틸리티—즉, "바이브 코딩(vibe coding)" 어시스턴트—가 되고 있습니다. 초점은 기능적 유용성과 해결하고자 하는 구체적인 문제에 여전히 머물러 있으며, 이를 통해 소프트웨어가 인간에 의해 설계된, 인간을 위한 도구로 남을 수 있도록 보장합니다.

Sources