본 내용은 <개발 생산성 향상을 위한 체크리스트 12가지>의 저자인 박재호 님의 유튜브 채널, <채널 박재호>에 게시한 콘텐츠의 스크립트를 발췌 및 편집하였습니다.
이번 글에서는 ‘환경의 변화’ 측면을 다루고 있습니다. ‘기술의 변화’ 측면으로 내용이 궁금하신 분은 아래 버튼을 클릭해 내용을 확인해 주세요🙂
❇️과거와 비교한 환경 부문의 변화 상황 – 소프트웨어의 편재적인 특성과 개발 환경의 편재화
이번에는 ‘환경의 변화’를 말하고자 합니다.
이제 웹 브라우저만 있으면 전 세계 어느 곳에 위치한 서비스 거의 대부분을 사용할 수 있는데요. 특히 앱스토어를 사용한 소프트웨어 배포가 가능해짐에 따라서 처음부터 전 세계를 대상으로 서비스할 수 있게 되었습니다. 즉, 처음부터 월드 와이드하게 배포할 수 있다는 점이 과거의 패키지 소프트웨어와의 큰 차이점입니다.
이렇다 보니 개발 환경 역시 편재적인 특성을 그대로 물려받는 움직임이 강해졌습니다. 예를 들어 클라우드 환경을 적극적으로 활용하기 시작하죠. 개발 환경의 상당수가 SaaS 형태로 제공됩니다. github, CI/CD를 위한 github action, 컨플루언스, 지라, 노션, 슬랙, 심지어 요즘 IDE까지도 웹브라우저에서 구동할 수 있거든요.
과거에 임베디드 분야는 개발환경을 설정하는데 2주에서 한 달 가까이도 소요됐습니다. 그런데 요즘 반나절도 아니고 한 시간 안에 개발환경을 설정하지 못 하면 큰 문제가 있는 것이라는 느낌이 강하게 듭니다. 인터넷도 빨라졌고 대부분의 소프트웨어가 On-Demand와 같은 설치형이 아니고 웹 브라우저로 처리되니까요. GitOps라고 불리는 Git을 중심으로 워크플로우를 구성하고 있는데요. github를 쓴다고 생각해보세요. 개발환경을 포함해 언제 어디서나 접근이 가능합니다.
코비드 팬데믹으로 인해 재택 환경이 일반적으로 보편화된 것인지, 아니면 기술적으로 이미 충분히 준비되어 있었지만 사람들이 환경을 바꾸지 않고 있다가 코비드 팬데믹으로 인해 등 떠밀려 개발 환경을 편재적으로 만든 것인지 조금 알쏭달쏭할 때가 있습니다. 아마 저는 둘 다 영향이 있다고 봅니다. 즉 기술적인 발전과 사회적인 요구가 각각의 축이 된다고 봅니다. 한 번 이렇게 환경이 만들어지고 나니, 과거의 환경으로는 해결을 못 하는 거죠.
즉 환경과 기술의 변화 때문에 현대적인 소프트웨어 개발 관련으로 ‘현대화’하는 것을 신경쓰지 않을 수 없는 상황입니다. 피하려고 해도 피할 수 없는 상황이라고 보면 됩니다.
❇️변화에 대응하는 우리의 자세 – 타조에게 배우는 교훈
그래서 제가 말하고 싶은 결론은 변화에 대응하는 우리의 자세입니다.
‘타조 증후군(Ostrich syndrome)’이란 말이 있습니다.
타조가 적을 만나면 모래에 머리를 파 묻는다는 속설인데 일단 내 눈에 안 보이면 안전할 거라는, 현실을 부정하고 소극적으로 대응하는 것을 비꼬아서 하는 말인데요.
그런데 이런 의미가 아니라는 것을 제가 정말 최근에 알았습니다.
‘타조가 모래에 머리를 파 묻는 건 상황을 피하기 위해서가 아니라 소리를 더 잘 듣기 위한 행위이다’라는 거죠. (귀를 땅에 묻으면 음파 속도 차이가 나거든요) 그래서 ‘변화와 위험을 감지하고 내가 어떤 판단을 내려야 될지 사전에 알아야 하기 위한 큰 그림이 아닌가’라는 얘기를 듣고 약간 놀랐습니다.
자, 그럼 우리도 이제 타조처럼 행동을 해야죠.
변화에 소극적으로 대응하지 말고 이제는 적극적으로 여러분들도 주변의 변화를 사전에 감지해서 이해 득실을 따지셔야 합니다.
무조건 신기술을 사용하고 클라우드로 옮기라는 말씀을 드리는 것은 아닙니다. 필요할 때 필요한 기술을 적절히 사용해야 하는데, 기술 적용 시기가 너무 늦어지거나 아니면 그 기술이 필요하지만 관성에 휘말려서 적용하지 않았을 때 입을 피해, 그리고 그로 인한 경쟁력 상실을 우려하는 겁니다.
그래서 여러분도 제가 말씀 드린 환경, 기술에 대해 내가 어느 정도 준비가 되어 있는지, 그리고 어떤 식으로 대응하고 있는지, 앞으로는 어떻게 대응할 것인지 한번 고민하는 시간을 가지면 좋겠습니다.
이상 채널 박재호를 운영하고 있는 박재호였습니다. 늦은 시간까지 시청 감사 드립니다.