반응형

Development 120

오픈소스에 대한 생각

오픈 소스는 공개적으로 그 설계에 액세스할 수 있기 때문에 누구나 기술을 수정하고 공유할 수 있는 분산형 프로덕션 모델이다. 이 용어는 소프트웨어 개발 맥락에서 해당 소프트웨어가 특정 무료 배포 기준을 준수한다는 의미에서 비롯되었다. 오늘날 오픈 소스 방식이라는 용어는 무료 정보 교환, 빠른 프로토타입 제작, 협업 개발의 원칙에 기반한 더 광범위한 가치 집합을 나타낸다. 기술이 유기적으로 발전하도록 누구나 새로운 아이디어를 내고 개선할 수 있다. - 출처: https://aws.amazon.com/ko/what-is/open-source/ 많은 제품들이 오픈소스를 사용하여 개발되고 있고 많은 개발자 및 회사에서 오픈소스에 기여를 하고 있다. 하지만 여전히 일부 회사의 매니지먼트들은 오픈소스에 기여하는 이..

Development 2024.11.23

Yocto 빌드를 위한 최신 AMD Ryzen 7985WX

4년 정도 전에 회사에서 Yocto 빌드를 하기 위해 32 Core CPU를 가진 AMD Ryzen™ Threadripper™ 2990WX 을 구매했다. 이 당시만 해도 전체 Core를 사용해서 빌드하면 빌드하다가 멈추고, PC가 죽어버리는 문제가 발생해서 안정적이지 않았고 어쩔 수 없이 32 Core, 64 Thread 전체를 사용하지 못하고 절반 정도밖에 사용하지 못했다. 결국 1달 전에 저 PC가 고장이 났고 새로 구매하는 상황이 발생했다. IT에서 위의 그림에 있는 3가지 옵션 (7995WX, 7985WX, 7975WX)을 주었고 팀내 현재 남은 예산에 맞게 최종적으로 7985WX를 구매했다. 7995WX는 96코어 192 스레드여서 그만큼 메모리도 많이 필요해 DDR5 4800 64GB짜리 8개..

Development 2024.11.10

repo manifest 명령어 사용

Repo는 안드로이드 오픈소스 프로젝트(Android Open Source Project, AOSP)에서 주로 사용하는 도구로, 여러 개의 Git 리포지토리를 관리하기 위해 설계되었다. Git은 강력한 버전 관리 시스템이지만, 대규모 프로젝트에서 여러 개의 리포지토리를 다루는 데는 불편함이 있을 수 있다. Repo는 이를 해결하기 위해 만들어졌으며, 여러 Git 리포지토리를 한꺼번에 클론하고 업데이트하며 동기화하는 기능을 제공한다. Repo의 주요 기능  1. 여러 Git 리포지토리 관리: 여러 리포지토리를 쉽게 클론하고 업데이트할 수 있다. 2. 명령어 자동화: 여러 리포지토리에 걸친 변경 사항을 동기화하거나 상태를 확인할 수 있는 명령어를 제공한다. 3. 메타데이터 관리: 각 리포지토리의 의존성, 버..

Development 2024.10.01

리더십 (leadership) 교육

회사에서 진행하는 리더십 교육을 듣고 있다. 코로나 전에는 3일짜리 Offline 교육이였다고 하는데 이제는 온라인으로 2달 코스로 진행이 된다. 전세계에 있는 직원들이 듣고 있고 12명이 이번 과정에 참여한다. 첫번째 소개 세션은 4시간 동안 했고 거기서 3개의 그룹으로 나누어서 각각의 주어진 4개의 임무를 그룹별로 진행한다. 우리팀에는 싱가포르, 이탈리아, 남아프리카 공화국에 있는 친구들이 있고 모두 각기 서로 다른 일을 하는 친구로 배정이 되었다. 각 임무의 호스트는 모든 사람이 한번씩 돌아가고 갈등 해결, 미래 커리어 등의 임무들이 주어져 있다. 첫번째 모임을 하기전에 사전에 정해진 항목으로 2명의 매니저와 인터뷰, 1명의 동료와 인터뷰, 1명의 친구 (업무를 같이 하지 않는 지인)와 인터뷰를 진..

Development 2024.09.12

Cloud 비용을 줄이기 위한 Hackathon 아이디어

회사에서 프로젝트를 진행하는데 개발 환경의 인프라가 대부분 Cloud에 올라가 있다. 당연히 비용도 엄청나게 지불하고 있고 관리가 잘 안되어 무차별적으로 사용하고 있는 부분도 많이 있다. 이에 전사적으로 Cloud 비용을 줄이기 위한 해커톤을 하루 진행하기로 했다.  기본적으로 오랫동안 사용하지 않는 아티팩트 찾아서 삭제, 올바른 형태로 CI/CD 사용, 최적의 인스턴스 유형 사용, 사용하지 않는 시간에 인스턴스 Off 등 큰 아이디어들은 제공한다. 그리고 실제 프로젝트의 아티팩트에 들어가서 줄이는 작업을 진행한다. 당연히 제품과 개발에 영향을 주면 안된다. 내일 참여하기 위해 간단히 아이디어를 생각해보려고 이렇게 글을 쓰고 있다. 우선 가능하면 현재 프로젝트에서 사용하는 AWS에 접속해서 어디서 비용을..

Development 2024.08.02

QNX 유용한 명령어 (Command)

QNX에서 사용할 수 있는 유용한 명령어에 대해 간단히 정리해보고자 한다. 이 글에서 설명하고 있지 않거나 명령어에 대한 자세한 옵션들을 보고 싶으면 QNX 사이트 https://www.qnx.com/developers/docs/8.0/com.qnx.doc.neutrino.utilities/topic/about.html 를 참고하기 바란다.기본 명령어1. pidin: 시스템의 프로세스 및 상태 정보를 표시한다.$ pidin ar 2. slogger2: 시스템 로그 메시지를 기록하는 데 사용된다. 3. slog2info: 시스템 로그를 표시한다. 4. use: 특정 명령어 또는 프로그램의 사용법을 표시한다. 5. pci: PCI 장치에 대한 정보를 표시한다. 6. devb-: 블록 I/O 드라이버를 실행한..

Development 2024.07.27

빌드 성능 개선 (최적화)

작년 10월 https://www.yocto.co.kr/176 글에서 Yocto 빌드 성능 최적화에 대해서 글을 썼고 중간중간 clang 적용, ccache 적용 등 회사에서 작업한 내용들을 간단히 적어보았다. 이 글에서는 일반론적인 임베디드 소프트웨어 개발에서 빌드 성능을 개선할 수 있는 작업들을 경험을 토대로 적어보고자 한다. Yocto Linux, QNX, 안드로이드 등 OS를 포함하는 빌드에서 성능을 개선하는데 큰 그림이 될 수 있을 것으로 생각된다. 차량용 ECU가 여러 개에서 하나로 통합되면서 고성능의 SoC가 필요하고 그 위에 하이퍼바이저 기반으로 여러개의 OS가 올라가서 동작한다. 이 각각의 OS를 빌드하는데도 오랜 시간이 걸리고 클라우드를 사용하면 그 비용을 상당히 많이든다. 현재 프로젝..

Development 2024.07.25

SEA:ME Symposium 2024 이벤트 후기

SEA:ME (Software Engineering Automotive & Mobility Ecosystems, https://seame.space/) 의 2024년 1년 성과를 공유하는 자리에 Follow로써 참여하고 온 후기를 간단히 적고자 한다. SEA:ME는 자동차 및 모빌리티 분야의 소프트웨어 개발을 위한 고급 학습 프로그램이다. 2023년에 시작된 이 프로그램은 독일 볼프스부르크의 42 소프트웨어 개발 대학에서 제공되며, 코드 기반 모빌리티, 자율 주행 시스템, 모빌리티 생태계를 중심으로 전문가를 양성한다. 폭스바겐, 마이크로소프트 등 산업계와 본 대학, 베를린 공대 등의 학계 전문가들이 협력하여 커리큘럼을 구성했으며, 실습 및 프로젝트 기반 학습을 강조한다. 12개월 동안 진행되며 전액 무료..

Development 2024.06.19

독일 소프트웨어 개발자 chatgpt 사용 범위

회사에서 마이크로소프트 (Microsoft)와 계약이 되어 Copilot이나 chatgpt 를 사용할 수 있게 되어 있다. 이 말인 즉 슨, Confidential 정보도 모두 공식적으로 사용할 수 있다는 이야기이다. 이 글에서는 chatgpt를 업무용으로 어떻게 사용하고 있는지를 간단히 이야기해보고자 한다. chatgpt 사용 범위는 무궁무진하지만 필자가 많이 이용하는 것들은 다음과 같다.영어 문장 교정: 통합의 중심에 있다보니 전체 공지를 할 경우, 블로그 글을 작성할 경우, Management를 포함하여 이메일 작성, Supplier에게 이메일 작성 등 글을 작성하는 경우가 많이 있다. 이 때 영어로 문장을 작성하고 각 용도에 맞게 chatgpt에게 교정해 달라고 하면 정말 깔끔하고 자연스럽게 교정..

Development 2024.06.19

개발자 해외 (독일) 취업 방법 및 연봉

필자는 2019년 2월 중순에 한국에서 독일 베를린으로 와서 이제는 6년차 베를리너인 임베디드 시스템 소프트웨어 개발자이다. 한국에서는 약 10년 정도 임베디드 리눅스를 가지고 가전제품을 만들었고 이제는 차량용 인포테인먼트 소프트웨어를 개발하여 최근 벤츠 E클래스에 들어가는 제품을 출시하였다. 이 글에서는 그동안 필자가 듣고 경험한 내용을 토대로 어떻게 독일에 취업을 할 수 있는지 다양한 방법들을 이야기해보고자 한다. 참고로 필자는 서류, 기술 인터뷰에 들어가 팀 동료들을 채용하는데 관여했고 작년에는 ANU (임시직) 채용에 관여하였다. 또한 Wolfsburg에서 운영중인 SEA:ME 프로그램에서 공부하고 있는 대학생, 사회 초년생들에게 멘토로써 조언도 하고 있다.독일 취업 경로독일 뿐만이 아니고 국내/..

Development 2024.06.18
728x90
반응형