티스토리 뷰

자동차 한 대를 만드는 데는 엄청난 공학적 지식이 필요하다. 작은 부품 하나에도 치밀한 설계와 분석이 요구되며, 각 부품이 조화롭게 맞물려 차량 전체가 원활하게 작동해야 한다. 그런데 여기서 끝이 아니다. 제품 자체에 의한 사고를 예방하기 위해 철저한 안전 분석과 평가 과정이 필요하다. 이를 지원하기 위해 다양한 안전 분석 툴들이 중요한 역할을 한다.

 

STPA, FMEA, HARA와 같은 툴들이 그 대표적인 예로, 특정 사고 원인을 예측하고 분석하는 기술과 방법론을 제공해 제품의 잠재적 위험 요소를 사전에 파악하고 대응할 수 있게 한다. 내가 속한 회사는 이런 툴을 개발하고 솔루션을 제공하며, 교육을 진행하는 곳으로, 도메인 지식이 프로젝트 성공에 필수적이라는 것을 실감하게 되었다.

 

나는 주로 C#으로 웹백엔드를 담당, PC 프로그램 등을 개발해왔는데, 이 회사에서 일하면서 처음으로 언어 중심의 사고에서 벗어나 도메인 중심적인 사고의 필요성을 깨닫게 되었다. 프로그램 유지보수와 사용자 니즈 파악이 중요한 역할을 하다 보니, 도메인에 대한 깊은 이해가 필수적이었다.

 

회사의 프로그램은 WPFDevExpress를 활용하여 개발되었고, MVVM 패턴을 비롯한 다양한 디자인 패턴이 적용되었다. 각 안전 분석 방법론을 모듈로 구성해 방대한 프로젝트를 관리하고 있으며, 유지보수의 통일성을 위해 팀 내 협업이 매우 중요했다. 나는 단순히 화면 개발에 그치지 않고 API 개발Java를 활용한 백엔드 작업, SQL을 사용한 내부 로직도 다루며, 프로젝트를 SaaS로 제공하기 위한 기반을 다졌다.

 

이 통합 분석 툴 중 내가 거의 전적으로 개발한 것은 CAST다. 항공 시뮬레이션용으로 설계된 CAST는 다이어그램 기능을 통해 복잡한 사고 예측과 분석 결과를 시각화하여 직관적으로 이해할 수 있도록 지원한다.

 

개발 과정에서는 GitLab을 활용해 모든 버전과 작업 이력을 체계적으로 관리했고, 이를 통해 팀원 간 효율적인 협업과 코드 리뷰를 진행했다. 이로써 코드의 완성도 또한 높일 수 있었다.

이전 직장에서는 다른 부서와의 협업이 대부분이었지만, 이곳에서는 한 팀이 하나의 프로젝트를 중심으로 협업하는 방식을 배우게 되었다.

 

이 모든 경험은 단순히 프로그램을 만드는 것을 넘어 제품의 안전성을 미리 검토하고 문제를 사전에 발견해 대응하는 일의 중요성을 다시금 깨닫게 해주었다.

 

 

그리고 무엇보다 중요한 깨달음이 있었다. 언어는 단지 도구일 뿐이라는 점이다. 한국어를 안다고 모두가 한국어 관련 일(국어 교사, 편집자, 사전 편찬자 등등)을 하는 것이 아니듯, 언어가 아닌 도메인 지식과 문제 해결 능력이 진정한 개발자로서 나아가는 길이라는 점을 되새기게 되었다.

 

언어는 배우고, 활용할 줄 알면 되는 것이지 않을까?

댓글
글 보관함
최근에 올라온 글
최근에 달린 댓글