Development

소프트웨어 플랫폼에 대해서 - 1부 (LG전자 webOS)

chbae 2023. 5. 28. 08:00
728x90

정확히 언제였는지 기억도 안난다. 한 10년쯤 전인가.. LG전자 CTO 산하 멀티미디어 연구소로 입사해서 블루레이 플레이어 및 이런저런 제품을 개발하고 있던 시절. 연구소 이름이 소프트웨어 플랫폼 연구소로 바뀌고 이제 플랫폼에 집중하겠다라고 했었던 시절이 있었다.

 

그 이름은 지금도 그대로 소프트웨어 플랫폼 연구소로 남아 있고 webOS 기반으로 플랫폼 관련된 일을 계속 하고 있는것으로 알고 있다. 처음에 소프트웨어 플랫폼이 무엇일까? 그 당시 어린 (?) 개발자에게는 이해도 안가고 너무 추상적인 개념 갔았다. 아직도 기억이난다. 황정환 연구소장님이 플랫폼을 최대한 쉽게 설명하고 이해시키려고 노력했던 모습을..

 

기억을 되새겨 보자면 플랫폼이란 다른 일들을 하기 위한 기반이 되는 것이고 백화점을 예를 들어 설명해 주셨다. 백화점에서 각층에 브랜드가 입점할 수 있도록 기반 설계와 구성을 해 놓으면 브랜드가 그 곳에 들어와서 자기의 제품을 팔 수 있도록 디자인해서 공간을 꾸민다고 말이다. 그렇게 이해했던 것 같다. 지금도 여전히 기억에 남는 말이기도 하고 말이다.

 

 

LG전자에서 약 7년 이상 webOS 플랫폼을 경험을 했고 지금도 Mercedes에서 MB.OS (Mercedes-Benz Operating System)의 큰 축 중 하나인 Infotainment 의 플랫폼을 정의하고 경험하고 있다.

LG전자의 webOS Platform

 

LG전자는 2013년도에 실리콘 밸리에 있는 HP Palm으로부터 webOS 플랫폼과 Palm 인력들을 인수했다. 인수 전,후에 실리콘 밸리에 가서 PoC, 인수과정에 참여했던 기억이 아직도 가끔 생각이 난다. 그때가 딸래미가 아내 뱃속에 막 꿈틀거리고 있을 시기였기에.. :) 더더욱

 

아무튼 그 당시 NetCast로 불린 LG TV 플랫폼은 이미 비대해지고 다양한 생태계를 지원하기에 한계가 있어서 webOS를 인수해 갈아타자는 움직임이였던 것으로 알고 있고, 지금 생각해볼 때 LG전자의 소프트웨어 역량을 엄청나게 향상시킨 좋은 결정이라고 생각한다. 처음에 새로운 환경 등에 적응하기 힘들었고 실리콘밸리에서 리딩을 하고 본사 매니지먼트에서 적극 지원을 해서 잘 정착되었던 것같다. 그렇지 않으면 지금 이렇게까지 오기 어려웠을 것 같다.

 

시작은 당장 성과를 내야했고 제품을 내야해서 스마트폰, 태블릿 용으로 만들었던 webOS를 TV용 OS에 맞게 만들어 제품을 출시하는 것을 최우선 목표로 해서 플랫폼을 주창하지만 당장은 어쩔 수 없이 TV에 제품에 올인해서 만들었다. 다행이 API와 이런 것들을 나름 잘 관리해서 아무 아주 크게 망가지지는 않았다고 생각한다.

 

다른 같이 일했던 LG 동료들은 필자의 의견에 반대할지 몰라도 최소한 필자는 그렇게 생각한다. 그리고 밖에 나와서 다른 회사들도 보고 지금 있는 회사에서도 일하는 것을 보니 현재의 webOS는 개발 프로세스 등은 나름 성숙되었다고 본다. 다만 Product 방향성 관리는 아쉬웠다. 이것은 모두 필자가 퇴사한 2019년 기준의 개인적인 생각이다.

 

다시 이야기로 돌아와서 2015년 쯤 webOS 플랫폼으로인가 첫 webOS TV가 양산 되었고 그 당시 성능은 아직 많이 떨어진다고 주위에서 들었지만 지금은 많이 성숙단계에 접어들었다. 그리고 이제 플랫폼이라는 것을 해서 다른 LG제품에 적용을 해보자라는 시도로 webOS Smart Watch, webOS Fridge등을 만들었다. 그리고 2018년에는 webOS OSE (Open Source Edition)라는 이름으로 오픈소스로 공개를 했다. 이후 Alluto 를 Luxoft와 함께 만들어 webOS Automotive를 상용으로 판매를 시도했지만 잘 안된 것으로 알고 있다.

 

 

LG webOS는 Yocto 기반의 리눅스로 만들어져 있다. Yocto라는 빌드 프레임워크가 있어서 플랫폼으로 만들기에 훨씬 수월했던 것 같다. 물론 내부적으로 아키텍처 설계하고 구성하는데 엄청나게 어려운 작업이지만 그래도 그것을 구현할 수 있는 기술적인 도구가 있어서 바닥에서 시작하는 것보다 훨씬 더 좋았고, 그래서 LG전자는 Yocto의 이사회 구성원으로 지속적으로 활동하고 후원하고 있는 것 같다.

 

플랫폼을 만들고 유지보수하는데는 상당히 큰 노력이 든다. 아키텍처적인 접근, 개발 프로세서, 유지보수, 품질 관리, 리소스 문제 등 생각해야할 것 들이 너무나도 많다. 이전 글에서 자동화 이야기해도 했는데 webOS는 자동화 테스트 프레임워크도 있고 CI와 연결해 자동화를 하고 있다. 문제도 가끔 생기지만 오랜 경험으로 많이 안정됬다고 생각한다. 물론 지금 필자의 회사에 있는 자동화와 비교하면 더더욱 그렇다. (여전히 내부에서 일하고 있는 webOS 개발자들은 동의 안할지도 모른다. :) )

 

LG전자의 webOS 플랫폼은 비지니스 전략에도 유용하게 사용될 수 있다. OS를 가지고 있다는 것 자체, 그리고 그걸로 양산을 하고 있다는 경험을 통해 다른 회사와의 비지니스에 활용할 수 있고 더 나아가 이 것을 판매를 할 수도 있는 기회를 만들 수도 있다. webOS 생태계를 가지고 앱스토어까지 가면 좋겠지만 개인적인 생각으로는 어렵지 않을까 싶다. 물론 비지니스와 고객을 잘 엮고 UI/UX와 기술적으로 잘 녹여내면 가능할지도.. 그러나 약간.. 아니 많이 비관적이긴 하다 :)

 

다시 말하지만 개인적으로 webOS는 LG전자 소프트웨어 개발 역량을 향상시키는 데 큰 성공적인 작품중에 하나라고 생각하고 지금 자동차쪽 소프트웨어 개발이 그보다 5년 이상 뒤져있다고 생각한다. 물론 복잡성은 훨씬 더 심해서 어려움을 엄청 많이 겪고 있다. 

 

https://en.wikipedia.org/wiki/WebOS 에 좀 더 많은 내용들이 들어있으니 관심이 있으면 한번쯤 읽어보기 바란다.

 

사실 이 글에 현재 하고 있고, 생각하고 있는 벤츠의 소프트웨어 플랫폼 (Infotainment 분야에서)를 쓰려고 했는데 생각보다 LG 전자 webOS 이야기가 길어져서 이 부분은 2부로 나눠서 다음에 써볼까 한다.

'Development' 카테고리의 다른 글

Embedded Open Source Summit 2023 - 후기  (0) 2023.07.01
Embedded Open Source Summit 2023 - 참석 전  (0) 2023.06.24
gitlab workflow  (0) 2023.05.25
오픈 소스 프론티어  (0) 2023.05.17
나의 public IP 찾기  (0) 2023.05.12