profile
Software Engineer + Product Manager
태그 목록
전체보기 (321)개발일기(76)토비의 스프링(26)더 나은 코드(23)테스트(20)Netty(18)Java(18)더 나은 테스트(15)How to work(13)생각(12)trouble shooting(11)프로그래머스(10)트러블슈팅(10)코딩테스트(10)회고(9)tcp(8)토비의스프링(8)커뮤니케이션(8)더 나은 설계(8)git(7)프로덕트 오너(7)(6)agile(6)C(6)우주지상국(6)network programming(6)비동기(5)읽기모임(5)자세(5)TDD(5)고민(5)더 나은 도구(5)asynchronous(5)junit(5)aop(5)dll(5)알고리즘(5)2021(5)매니지먼트(4)배움(4)Spring(4)JNA(4)github(4)windows(4)코드리뷰(4)커리어(4)wireshark(4)독서(4)IntelliJ(4)인프콘(4)추상화(4)문제(4)debug(3)Telnet(3)예외(3)사람(3)객체지향(3)학습(3)연역적(3)데이터(3)네트워크 패킷분석(3)multithreading(3)오브젝트(3)프로젝트 매니저(3)awaitility(3)Software Engineering(3)2022(3)관계(3)습관(3)협업(3)협력(3)문제해결연습(3)test(3)의존관계(3)네트워크 프로그래밍(3)실시간(3)Software Enginerring(2)가치(2)사용자(2)마인드(2)문서화(2)주석(2)ci(2)함께자라기(2)컨퍼런스(2)TROUBLESHOOTING(2)networking(2)http(2)배포(2)Mockito(2)test case(2)귀납적(2)더 나은 디자인(2)Locale(2)clean architecture(2)문제 해결 연습(2)제품(2)리더(2)디버깅(2)collaboration(2)stream(2)분석(2)코드로 문제해결 연습(2)cherry-pick(2)온보딩(2)클린 아키텍처(2)leak(2)목표(2)리팩토링(2)소프트웨어 개발자(2)jackson(2)기획(2)User Manual(2)개발문화(2)(2)mock(2)management(2)개방폐쇄원칙(2)실용주의 프로그래머(2)변경(2)태도(2)figma(1)Pain Point(1)PacketSender(1)StringUtils(1)커뮤니티(1)개선(1)주간보고(1)유틸리티(1)불편(1)시니어개발자(1)데이터 엔지니어(1)코드작성외에(1)Memory Leak(1)응집도(1)software engineer(1)Pair Programming(1)힙 메모리(1)TCP Connection Persistence(1)균형(1)아이들(1)고객(1)객체지향의사실과오해(1)성경(1)Device Driver(1)Thread Pool(1)OXM(1)help(1)지상국(1)비실시간(1)실험(1)SNMP(1)면접(1)사표(1)Strategy Pattern(1)동료주도개발(1)소수점(1)프로토타입(1)메모리가시성(1)Interrupt(1)인증(1)요구사항(1)공유(1)어려움(1)캐시일관성(1)예측(1)프로세스(1)Q&A(1)util(1)Functional(1)사용자중심(1)메모리(1)ux(1)volatile(1)Copilot(1)가짜필요(1)자동화(1)결합도(1)문서(1)Persona(1)대역(1)동료(1)조직(1)aws(1)아주힘듬(1)변화(1)SOLID(1)network(1)branch(1)XML(1)세미나(1)네이밍(1)Feedback(1)다름(1)User Journey(1)삶의자세(1)흥미(1)아두이노(1)병렬(1)모델링(1)작업난이도(1)코드변경관리(1)CI/CD(1)부족함(1)Manangement(1)cdd(1)Transction(1)switch(1)고통(1)Nginx(1)authentication(1)json(1)주니어(1)설계(1)트러불슈팅(1)자유(1)삶의일기(1)exception(1)더나은코드(1)DTO(1)철학(1)환경(1)1553B(1)프로그래밍(1)redmine(1)크리스찬(1)스프링(1)impact(1)신뢰성(1)템플릿(1)우주(1)메타포(1)행복(1)메시지큐(1)aspect(1)snmp4j(1)String(1)동반자(1)인터뷰(1)algorithm(1)부모참여수업(1)감정(1)복잡성(1)일기(1)클린코드(1)어설프다(1)InvalidMemoryAccess(1)독서메모(1)Ideation(1)di(1)커밋(1)인사이트(1)MVP(1)PSA(1)이슈관리(1)putty(1)기록(1)lazy(1)JIRA(1)어린이(1)성과(1)화면중심(1)템플릿/콜백(1)경계값(1)도구(1)short circuit(1)clean software(1)kotlin(1)누수(1)예외처리(1)Native(1)노이즈캔슬링(1)데이터 통신(1)더 나은 개발(1)SDLC(1)발표(1)핀란드(1)제약사항(1)마음 가짐(1)중복(1)제안서(1)heap memory(1)동등분할(1)생존(1)notion(1)alignment(1)테스트케이스(1)생각의프레임(1)회사(1)개발자(1)memory(1)준비(1)Reflection(1)교보문고(1)관심(1)사업(1)창업(1)lua script(1)도전(1)split()(1)멀티쓰레드(1)Csharp(1)Messaging Service(1)함께(1)의존(1)코딩(1)assembly(1)projects(1)IoC(1)집중(1)문제정의(1)actions(1)SI 프로젝트(1)svn(1)신뢰(1)문화(1)warning(1)rebase(1)죽음(1)빌더 패턴(1)약함(1)리드잇(1)백로그(1)Thread(1)Product Designer(1)캐시불일치(1)장애회고(1)S3(1)우선순위(1)Pull Request(1)garbage collector(1)아쉬움(1)디자인 패턴(1)프로젝트(1)ObjectMapper(1)iteration(1)비정상종료(1)Product Design(1)VxWorks(1)문제해결(1)(1)
post-thumbnail

메시지 큐를 활용한, 유연한 전송 구조 만들기

특정 하드웨어 시스템을 제어하기 위해 Netty 기반 메시징 서버를 개발중입니다. 시험 중 특정 조건이 되면 타겟 시스템에서 일부 메시지를 처리하지 못하는 문제가 발생했는데요. 문제를 해결하기 위해 메시징 서버의 구조를 개선한 사례를 소개합니다.문제가 발생한 서버 시스

2023년 3월 2일
·
2개의 댓글
·
post-thumbnail

문제 현상 이면에 숨겨진 원인 찾기: TCP 통신 트러블슈팅

개발한 시스템에서 문제가 발생하면 우리가 가장 먼저 만나는 것은 문제의 표면적인 현상입니다. 우리는 문제를 해결해야 하는 엔지니어로서 문제의 현상 이면에 숨겨진 진짜 원인을 찾아야 합니다. 그래야 문제를 해결할 수 있습니다. 어느날 동료에게 전화 한 통을 받았습니다.

2023년 2월 28일
·
0개의 댓글
·
post-thumbnail

Heap 메모리 누수 이슈: 문제의 원인을 찾는 연역적 과정

가비지 컬렉터의 동작 원리를 이해하고 이를 근거로 프로그램의 힙 메모리 증가 현상을 분석한 과정을 정리해 보았습니다.

2023년 2월 23일
·
2개의 댓글
·
post-thumbnail

시스템 재부팅 이슈: 문제를 해결하는 두 가지 접근법 (귀납적, 연역적)

개발을 시작한지 얼마되지 않았을 때는 프로그램에 버그가 생기면 관련된 부분에 로그를 찍거나, 디버그 모드를 통해 코드를 추적해서 원인을 찾아갔다. 그때는 귀납적 방법, 그게 전부인 줄 알았다.

2023년 2월 17일
·
0개의 댓글
·

개발일기 #75 : 의사선생님처럼

아빠는 오늘 장난감 블록 조립을 잘하는 사람이랑 같이 고장난 장난감을 함께 봤어. 그 친구가 오늘은 직접 아빠를 찾아와서 같이 고장난 부분을 살펴봤단다. 아빠가 어제 병원의 의사 선생님처럼 아프면 일어날 수 있는 가장 나쁜 상황을 설명해줬더니 놀란 것 같아. 친구가 장

2022년 11월 25일
·
0개의 댓글
·
post-thumbnail

데이터 버스의 전기신호를 찍어본 경험은 재활용이 가능한가요?

토비의 스프링 책을 읽다가 DI(Dependency Injection)에 대해 정리된 설명을 읽는다. A→B라는 의존관계를 갖는 오브젝트가 있을 때 A와 B 사이에 표준화된 인터페이스를 두면 A는 변경하지 않으면서 B의 구현을 B1, B2, B3로 자유롭게 확장할 수

2022년 11월 14일
·
0개의 댓글
·

공유되는 위험한 DLL 내 전역 정적변수

윈도우 운영체제에서 DLL의 코드 영역은 운영체제 내 모든 프로세스가 공유하는 메모리 영역에 올라가서 시스템 전체에서 공유되어 사용된다. DLL 함수에서 선언된 지역변수는 각 프로세스의 쓰레드 스택에서 독립적으로 관리될 것이고, new 해서 생성되는 객체 역시 각 프로

2022년 11월 8일
·
0개의 댓글
·

개발일기 #64 : 나누어진 두 팀

새로운 장비의 IP 설정을 찾는게 장비 제어 모듈 개발의 시작이다. 메뉴얼을 보고 IP 설정을 해보는데 되지 않는다. 장비를 구매하고 운영하는 팀에 문의해 보니 IP를 바꾸었는데 까먹었다고 한다. 장비에는 화면도 없고 몇몇 예상되는 IP 대역을 스캔해 보아도 찾을 수가

2022년 11월 2일
·
0개의 댓글
·

개발일기 #54 : 문제를 해결하고자 적극적으로 도움을 구하는 자세

신규 안테나의 제약사항 때문에 미션을 수행할 수 없는 구간이 생기는 문제가 있었다. 하드웨어 엔지니어로부터 미션이 안되는 구간을 감안하고 운영하겠다는 이해할 수 없는 대답을 듣고 마음이 어려웠던 기억이 난다. 그 날 회고를 하면서 나 스스로 문제를 해결하겠다는 마인드를

2022년 10월 20일
·
0개의 댓글
·

개발일기 #46 : 기록해 뒀어야 했다

지난번에 해결했던 문제가 다시 발생했다. 개발한 시스템의 버그는 아니고 제조사에서 제공하는 하드웨어 세팅을 위한 프로그램 실행이 안되는 문제다. 근데 지난번에 해결했던 방법이 생각이 안난다. 오늘 그래서 2~3 시간을 날렸다. 별거 아닌 줄 알았는데.. 기록해 뒀어야

2022년 10월 12일
·
0개의 댓글
·