본문 바로가기

소프트웨어-이야기/소프트스킬

ADR: Architecture Decision Record ADR이란? "아키텍처 결정 레코드"는 소프트웨어 아키텍처 의사 결정 과정을 문서로 기록하는 양식을 의미한다. 의사 결정 과정을 문서화한 자료는 지난 히스토리를 쉽게 파악하고 동료들을 설득하는 데에 사용된다. 양식 ADR 포맷 제목 아키텍처 결정을 간략히 기재 상태 제안됨 / 수락됨 / 대체됨 지난 의사 결정이 대체되는 경우, 지난 ADR에 의사결정이 대체되었다는 사실을 기록해둔다. 그리고 수락됨 ADR에는 대체된 ADR 경로를 기록해둔다. 콘텍스트 왜 이렇게 결정할 수 밖에 없었나? 결정 결정. 그리고 그렇게 결정한 합당한 사유 결과 해당 결정이 미치는 영향 컴플라이언스 (옵션) 해당 작업이 반영되었음을 어떻게 확인할 수 있는가 노트 (옵션) 이 결정에 관한 메타데이터 (결정에 참여한 사람) 참고 ht..
XY Problem 이란? XY Problem이란? XY Problem은 실제 문제보다는 문제를 해결하기 위해 시도한 해결방안에 대해 묻는 것이다. XY Problem은 도움을 요청하는 사람과 도움을 제공하는 사람 모두에게 많은 시간과 에너지를 소모하게 만든다. 이 상황에 빠지게 되면, 사람들은 해결방안이라고 믿는 것에 집착하게 된다. 그래서 한발짝 물러서서 그 문제를 설명하지 못하게 만든다. XY Problem이 발생하는 순서 요청자는 X를 하고 싶어 한다. 개발자는 X는 모르겠지만, Y를 하면 문제를 해결할 수 있다고 생각한다. 요청자는 Y도 할 줄 모른다. 요청자는 다시 Y에 대한 도움을 요청한다. 다른 개발자가 Y로 요청자를 도와주려고 하지만, Y가 해결하고자 하는 것이 이상해보이기 때문에 혼란스러워한다. 많은 커뮤니케이션..
(Google) 개발자를 위한 구글 스프레드 시트 팁 최근에 구글 스프레드 시트를 활용하면서 배운 팁들을 정리해보고자 합니다. 이 글에서 사용한 샘플 데이터 시트는 다음과 같습니다. 1. 여러개의 시트를 하나로 합치기 ={'제주도-카페'!A2:C2; '서울-카페'!A2:C2} 합칠 시트와 범위를 {} 괄호 안에 입력합니다. 수직으로 합치고 싶은 경우에는 Sheet를 세미콜론(;)으로 구분하고, 수평으로 합치고 싶은 경우에는 콤마(,)으로 구분합니다. 2. 시트 데이터에 쿼리 적용하기 =QUERY('카페 총합'!A2:D, "select A,B,C,D where A is not null AND B = '디저트'") 스프레드 시트에 쿼리를 적용하여 데이터를 가져올 수 있습니다. 3. 여러개의 시트에서 필요한 데이터만 가져와서, 하나의 시트에 합치기 ={FILTE..
티스토리 에디터처럼 코드 하이라이트 변경하기 1. HTML에 아래의 코드를 추가한다. atom css 파일은 hilight.js에서 다운받은 후, 티스토리에 업로드해서 사용하면 된다. 2. 티스토리 CSS 변경하기 /* 문단 간격 */ .entry-content p { margin-bottom:30px; display: block; margin-block-start: 1em; margin-block-end: 1em; margin-inline-start: 0px; margin-inline-end: 0px; } /* code highlight */ .entry-content pre { background-color: #fafafa; padding:20px; font-size: 14px; padding: 15px; border-radius: 3px; f..
(디버깅) Google Chrome 개발자콘솔로 프론트 통신상태 조절하기 Slow 3G으로 설정해주면, 통신상태가 불안한 상태에서 프론트가 처리되는 상태를 디버깅할 수 있다 👍
(온라인스터디) TELECONSOLE + teletype Atom 온라인 오픈소스 스터디할 때, 행아웃으로 화면공유를 하니까 잘 안보였다.그래서 터미널을 공유할 수 있는 프로그램인 TELECONSOLE과, ATOM 화면을 공유할 수 있는 teletype Atom을 써봤었는데, 신세계였다. 😻온라인으로 협업할 일이 있으면, 요 두개를 가져다 쓰면 완전 좋다. TELECONSOLE teletype Atom 텔레타입 아톰은 Host Atom에 게스트 Atom이 접속하는 개념인데, 읽기 권한만 있는 구글 드라이브 문서를 보듯.. 아톰 화면을 볼 수 있다.
(Draw.io) 온라인 다이어그램 툴 https://www.draw.io/여기 들어가서 그리면 된다 ㅎㅅㅎ XML으로 저장해두고, 나중에 재수정해서 쓸 수도 있다. 요런식으로 그려다가 쓰면 된다 ㅎㅅㅎ
(애자일) 팀원들과 플로우 차트 함께 그려보기 배경 이전 회사에서 프로젝트를 시작할 때, 디자이너 + PO + 클라이언트 개발자 + 서버 개발자들이 같이 모여서 화이트 보드에 플로우를 그려본적이 있다. 다 같이 플로우를 그리고 논의하는 미팅은 시간이 오래 소요된다. 당시에 한 제품에 대한 플로우를 그리는 데에 몇시간씩 여러번의 회의를 했었다. 그럼에도 의미가 있는 시간이었다. 와이어프레임, UI, 유저스토리 등.. 제품 분석/설계가 확정지어지지 않은 상황에서 이 방법을 사용하면 유용했다. 장점 1. 팀원들이 같은 제품을 생각하는 데에 도움이 된다.팀원들이 기능을 서로 다르게 생각할 수 있다. 그런데 플로우를 그려나가면서, 각자가 상상한 것들을 이야기하면서 점점 싱크가 맞아진다. 2. 예외 케이스들을 사전에 빠르게 파악할 수 있다.집단 지성의 힘 같은..