개발자

"발전과 안정성 고루 갖춰" 바딘 기업 자바 현황 보고서의 의미와 분석

2023.04.10
자바 개발 프레임워크 바딘(Vaadin)이 최근 기업 자바 현황에 대한 새로운 설문조사 결과를 발표했다. 이번 설문조사 결과와 다른 여러 자료를 종합해 자바의 발전 상황을 파악해 보자.  전반적으로 자바 세계는 다양한 규모와 용도의 애플리케이션을 구축하는 기반을 토대로 활기를 띄고 있고, 자바에 대한 관심도 되살아나고 있다.
 
바딘의 ‘2023년 기업에서의 자바 현황(2023 State of Java in the Enterprise)’ 보고서와 다른 몇 가지 자료를 살펴보고, 현재 기업용 자바와 관련하여 가장 중요한 발전 상황을 요약했다.
 
ⓒ Getty Images Bank
 

자바 따라잡기

자바는 지난 10년 동안 점진적으로 개선됐다. 지금은 프로젝트 발할라(Valhala)의 자바 언어 리팩터와 프로젝트 룸(Loom)의 자바 동시성 업데이트를 통해 더욱 중요한 전환점에 서 있다. 앞으로 구현될 이러한 변화와 보안 측면의 고려 사항을 감안할 때 자바를 최신 버전으로 유지하는 것이 특히 중요하다.
 
바딘의 설문조사 결과에 따르면 자바를 사용하는 개발자는 지금까지 버전 업데이트에 충실히 임한 것으로 보인다. 응답자의 26%는 버전 17 이상을 사용 중이라고 답했으며 21%는 현재 업그레이드를 진행 중이고 37%는 업그레이드할 계획이라고 답했다.
 
이러한 결과는 자바 11이 현재 LTS(장기 지원) 표준이 되면서 자바 8을 차차 대체하고 있음을 보여주는 뉴 렐릭(New Relic)의 조사 결과와도 일맥상통한다. 자바 17은 최신 LTS 릴리스로, 2년 출시 주기에 따라 자바 11을 대체하며 곧 자바의 기준 업그레이드가 된다. 다음 LTS 릴리스는 자바 21이며 예정된 시점은 2023년 9월이다.
 

사이버 보안 위협

설문 결과는 자바 개발자들에게 보안이 가장 주된 관심사임을 보여준다. 이유는 명확하다. Log4j 취약점이 발견되면서 자바 애플리케이션과 그 외의 코드 취약점이 가장 중요한 관심사로 부상했기 때문이다. 사이버 보안은 느리게 움직이면서 갈수록 더 강력해지는 허리케인과 같다.
 
바딘 보고서에 따르면 자바 개발자의 78%는 ‘앱 보안 보장’이 핵심 관심사라고 답했으며 24%는 상당한 과제, 54%는 어느 정도 과제라고 답했다.

자바 자체는 매우 안전한 플랫폼이다. 그러나 다른 모든 언어와 마찬가지로 자바 역시 서드파티 취약점에 노출된다. 안전한 자바 애플리케이션을 만들고 배포하기 위해서는 애플리케이션 수명 주기와 기술 스택 전체에 걸쳐 적절한 보안 관행을 유지해야 한다. 미국 연방 정부도 오픈소스 소프트웨어 보호와 취약점 추적을 심각하게 받아들이고 있으며 CISA를 통해 제로 트러스트 아키텍처 도입을 촉구하고 있다.
 
자바는 기반이 견고한데다 계속 진화하는 플랫폼이므로 자바 개발자들은 웹 애플리케이션이 직면하고 있는 변화하는 위협 환경에 대처하기에 유리한 위치에 있다. 보안 우려를 인식하고, 사이버 보안을 일상적인 개발 활동에 통합하기만 하면 된다.
 

개발자 경험

바딘 조사에서 응답자의 76%는 개발자를 채용하고 유지하는 것이 상당한 과제 또는 어느정도 과제라고 답했다. 물론 인력난은 업계 전반적인 문제다. 개발자의 번아웃과 불만족은 우수한 소프트웨어 개발자를 영입하고 유지하는 데 있어 큰 어려움을 초래한다.
 
개발자 유지를 고민한다면 가장 좋은 방법은 개발자 경험(DX)에 비추어 보는 것이다. 자바 프로그래머 역시 다른 코더와 마찬가지로 노력을 뒷받침해주고 기술과 창의성을 발휘하도록 허용하는 환경에서 일하고 싶어한다. 개발자를 지지하는 환경에는 개발 툴과 프로세스, 전체적인 조직 문화까지 포함된다.
 
개발자 경험을 개선하는 한 가지 방법은 배포와 같은 스트레스가 큰 개발 단계를 능률화하고 일관성을 부여하는 견고한 데브옵스 인프라를 활용하는 것이다. 데브옵스와 개발자 경험 사이에는 상호작용이 있다. 개발자가 사용하는 툴과 프로세스를 개선하면 개발자는 그 툴과 프로세스를 더 쉽게 유지 관리하고 상황에 적응하며 정확성을 보장할 수 있다.
 

클라우드 네이티브 vs. 자체 호스팅 배포

바딘 연구에서는 배포가 큰 비중을 차지한다. 클라우드 인프라와 서버리스 플랫폼, 즉 클라우드 네이티브 환경은 자바 애플리케이션 발전의 필수적인 요소로 간주된다. 현재 자바 애플리케이션의 55%가 퍼블릭 클라우드에 배포되며, 온프레미스 및 사설 호스팅이 여전히 애플리케이션 배포의 70%를 차지하고 있다. 퍼블릭 클라우드, 온프레미스, PaaS로 분산된 쿠버네티스와 서버리스가 배포에서 차지하는 비중은 56%다.
 
서버리스 제공업체 중에서 선두는 아마존 웹 서비스(AWS)다. 응답자의 17%는 AWS 람다를 사용해 자바 애플리케이션을 배포한다고 답했다. 설문 응답을 기준으로 마이크로소프트 애저와 구글 클라우드 플랫폼 서버리스가 전체 배포에서 차지하는 비중은 각각 4%다.
 
온프레미스 서버와 가상 머신 다음으로 주도적인 배포 형태는 온프레미스 쿠버네티스로, 응답자의 29%가 사용한다고 답했다.
 
이러한 수치는 자바 생태계가 클라우드 네이티브 기술을 향해 계속 이동하고 있지만 여전히 기능의 상당부분이 자체 호스팅되는 서버에서 실행되고 있음을 보여준다. 많은 자바 사용 조직은 클라우드 플랫폼 도입이 시급하다고 느끼고 있다. 그러나 클라우드 제공업체의 컴퓨팅 임대 비즈니스 모델에 종속되는 것보다는 여전히 자체 호스팅 플랫폼과 프레임워크를 더 선호하는 개발자도 있다.
 

자바 애플리케이션 유형

당연히 자바 애플리케이션의 대다수는 웹 애플리케이션이다. 설문 시점을 기준으로 개발 중인 모든 제품 중에서 데스크톱 애플리케이션은 18%에 불과하다. 자바를 사용하는 신규 및 기존 애플리케이션의 구성은 다양하다. 바딘 조사에서는 현재 기술 스택과 계획된 스택 변경을 구분했다.
 
풀스택 자바 애플리케이션의 강세가 이어진다는 점은 특히 흥미롭다. 응답자의 70%는 향후 프로젝트에 새로운 풀스택 자바 애플리케이션을 사용할 계획이라고 답했다.
 
풀스택 애플리케이션 바로 뒤에는 백엔드 개발이 있다. 응답자들에 따르면 새로운 투자 계획의 69%가 백엔드 API에 대한 투자다.
 
풀스택과 백엔드 개발 다음으로 응답자들이 개발 노력을 쏟고 있는 영역은 기존 애플리케이션 현대화(57%), 이기종(자바와 자바스크립트 또는 타입스크립트) 풀스택 애플리케이션 개발(48%), 기존 애플리케이션을 클라우드로 마이그레이션(36%), 기존 자바 백엔드를 위한 새로운 프론트엔드 구축(29%) 등이다.
 
설문에서는 자바 개발자들이 현재 선호하는 프론트엔드 프레임워크도 살펴봤다. 앵귤러(37%)와 리액트(32%)가 주도적이고, 그 뒤를 뷰(16%)가 따른다. 리액트가 가장 인기 있는 프레임워크인 일반 업계와는 다른 결과다. 스벨트와 같은 다른 프레임워크는 설문에 등장할 만큼 두각을 나타내지 못했다.
 
스프링의 경우 그 인기와 유용성을 고려할 때 자바 개발자가 많이 사용하고 있다는 사실은 놀랍지 않다. 응답자 중 79%는 스프링 부트를, 76%는 일반 스프링 프레임워크를 사용한다고 답했다. 개발자들은 두 가지 모두 계속 사용될 것으로 예상한다.
 

현대화와 유지보수성

바딘 설문 응답자의 57%는 앞으로 계획된 투자에서 현대화가 주 관심사라고 답했다. 응답자들이 선택한 현대화의 가장 큰 이유는 유지보수성이다.
 
유지보수성은 분야를 막론하고 모든 개발자들의 영원한 관심사다. 자바에 레거시, 즉 과거에 이미 구축된 것으로 분류할 수 있는 방대한 양의 코드가 존재하는 만큼 이러한 코드를 손봐서 미래로 끌어올 수 있도록 기존 시스템을 업그레이드해야 한다는 인식이 강하다. 건전한 충동이다. 이미 있는 것을 리팩터링하고 강화하기 위한 의지와 자금을 찾는 것은 모든 장기 프로젝트의 핵심이다.
 
유지보수성 다음은 앞에서도 나온 보안이다. 여기서 보안은 현대화의 또 다른 이유다. 응답자의 20%는 보안이 현대화의 가장 큰 이유라고 답했으며 16%는 두 번째, 21%는 세 번째 이유라고 답했다. 개발자들이 보안에 초점을 두는 것은 합리적이고 건전한 현상이다.
 

자바와 UI

자바 개발자가 꼽은 모든 과제 중에서도 “직관적이고 간단한 UX”를 구축하는 것이 가장 큰 과제로 나타났다. 응답자의 30%는 이를 상당한 과제라고 답했고, 51%는 어느정도 과제라고 답했다.
 
UI는 모든 애플리케이션에서 까다로운 부분이다. 필자 생각에 자바 개발자들은 백엔드 API 및 미들웨어 구축에 강하고, 자신에게 익숙한 기술을 사용해 스택 전반을 구축할 방법을 원한다. 즉, 풀스택 자바 애플리케이션에 대한 방점을 볼 수 있다. 한 응답자는 설문에서 “백엔드와 프론트엔드에 모두 자바를 사용하고 싶다”라고 말했다. WASM을 통해 언젠가는 그 바람이 실현될 수도 있다.
 
그때까지는 자바 개발자는 리액트와 같은 자바스크립트 프레임워크에서 구축하거나, 자바서버 페이스(JavaServer Faces) 또는 구글 웹 툴킷과 같이 자바로 코딩하고 자바스크립트로 출력할 수 있게 해주는 기술을 사용하거나, 힐라(Hilla) 또는 j힙스터(jHipster)와 같이 자바와 자바스크립트를 하나의 테두리 안에 포괄하는 프레임워크를 사용해야 한다. 
 

자바와 다른 도구의 통합

업계 전체가 그렇듯이 자바 개발자들도 CI/CD와 같은 더 나은 데브옵스 방법으로 전환했고 써드 파티 통합을 채택하고 있다. 바딘 보고서에서는 로깅, 관찰가능성, 싱글사인온(SSO) 솔루션이 가장 인기 있는 툴로 나타났다. 그 외에 자바 생태계에서 많이 사용되는 써드 파티 툴로는 쿠버네티스, 전사적 자원 관리(ERP) 및 고객 관계 관리(CRM)와 같은 비즈니스 툴, 데브옵스, 다중 인증(MFA) 솔루션 등이 있다.
 

결론

바딘의 기업 자바 현황 보고서는 현재 상태와 앞으로 발전할 방향, 두 가지 측면에서 모두 폭넓게 자바를 조망한다. 전반적으로 자바는 활발한 발전과 안정성이 결합되는 추세를 보이고 있다. 이 두 가지 요소는 자바가 미래를 위해 준비된 핵심 기술임을 나타낸다.
editor@itworld.co.kr 
Sponsored

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.