일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- MySQL
- backend
- JPQL
- RequestBody
- Test Doulbe
- db
- Test
- 일상
- 테크쇼
- FCM
- Coputer Science
- OS
- modelmapper
- Junit 5
- 소프티어
- 자바
- softeer
- ObjectMapper
- 공룡책
- Service 계층 테스트
- Test code
- enumSet
- mapstruct
- Server
- Java
- JPA
- ExceptionResolver
- Spring
- proxyFactory
- 인프콘2023
- Today
- Total
공부내용공유
2023 인프콘 후기 및 간단 요약 본문
서론
인프콘 2023 에 당첨되어 인프콘에 갔다왔다! 세션도 정말 재미있었고 경품들도 잔뜩 받았다. 나중에 볼 수 있게 들었던 세션들에서 기억나는 내용과 후기를 간단히 남겨 본다.
본론
듣고 싶은 세션들은 정말 많았지만 시간대별로 1 세션만 고를 수 있어서 들어가기 직전까지도 고민을 많이 하였다.
- 소프트웨어 설계를 위한 추상적, 구조적 사고
- 변별력을 200% 더 높인 개발자 채용 방법: 코드 리뷰 테스트
- 어느날 고민 많은 주니어 개발자가 찾아왔다 2탄: 주니어 시절 성장과 고민들
- 점진적 추상화
- 스프링과 함께 더 나은 개발자 되기
이렇게 5개의 세션들을 너무 재밌게 들었다. 각 세션별로 기억나는 내용, 후기들이다.
소프트웨어 설계를 위한 추상적, 구조적 사고
초반 내용에서 발표자분이 말하셨던 내용 중 기억나는것은 개발자가 해야하는 일이였다.
보통 개발 공부를 시작하게 되면 단순히 코드를 치는게 개발자의 일이라고 생각하지만 실무를 하게되면
- 문제 이해, 요구사항 파악
- 데이터 설계, 아키텍쳐 설계
- 코드 구현
- 기능 평가, 테스팅, 리팩토링…
등등 다양한 업무를 해야 하고 점점 연차가 올라갈수록 책임을 지게된다.
나도 내 프로젝트를 진행하면서도 느꼈지만 기술적인 부분도 중요하지만 요구사항을 잘못 파악하면 그건 잘못된 코드가 된다. 기술적인 공부도 당연히 해야 하지만 상대방의 의견을 잘듣는 능력, 내 생각을 언어로 표현하거나 시각화를 하여 잘 전달하는 능력도 꾸준히 연습할 것이다.
그 이후에는 프로그램을 설계하면서 추상화, 일반화, 아키텍쳐 등을 얘기해주시면서 여러 좋은 얘기를 많이 해주셨다. 사실 그 뒤 내용은 아직 경험이 적고 아는게 많지 않아 정말 와닿고 그런 내용은 없었다.
아는만큼 보인다는 말이 있는 것처럼 같은 강의를 들으면서도 다른 많은 인사이트를 얻은 사람들도 있을것이다. 항상 테크쇼를 가면서 나도 더 공부하고, 경험하여 세션을 들을 때 같이 고민하고 의견을 제시할 수 있을 정도가 되고 싶다고 생각을 했다.
변별력을 200% 더 높인 개발자 채용 방법: 코드 리뷰 테스트
이 세션도 정말 재미있게 들었다, 간단하게 세션 내용을 요약해보자면 일단 코드 리뷰 테스트는 말 그대로 채용 전형에서 과제나 알고리즘 테스트 대신 코드 리뷰로 테스트를 하는 개념이다.
이러한 생소한 테스트를 도입하게된 배경은 채용을 할 때 면접에 너무 많은 시간을 빼앗겨 본업을 하기 힘든 상황이었고 1차수 전형에서 조금 더 엄선된 사람들을 뽑으면 면접에 투자하는 시간이 줄어들지 않을까에서 시작하였다고 하셨다.
보통 과제 전형이나 알고리즘 테스트 전형으로 1차수를 선발하는데 최근에는 chatGPT 와 같이 AI 들이 발전함에 따라 알고리즘 테스트에서 많은 어뷰징이 일어나고 있고 과제 전형은 어뷰징은 덜 하나 참여자의 부담이 크다보니 참여율이나 중간 하차율이 높아서 고민을 하게 되었다고 하셨다.
실제 프로젝트에서 하고 있는 코드 리뷰는 그 사람의 코딩 스타일이나 여러가지를 확인할 수 있고 이를 테스트로 사용하면 어떨까 하여 코드 리뷰 테스트를 시작하였고 실제 참가자들의 만족도, 면접 전형의 합격률은 높아졌고 건정성 지표인 참가율, 제출률은 조금 높아지거나 이전 전형과 유사했다고 하셨다.
물론 신입을 채용할 때는 사용하기 어렵다는 한계도 있지만 참신하고 재미있는 테스트 방법이라고 생각을 했고 어떤 리뷰가 좋은 리뷰인지 코드 리뷰에 대해 한번 더 고민하게 되는 세션이었다.
어느날 고민 많은 주니어 개발자가 찾아왔다 2탄: 주니어 시절 성장과 고민들
인프런 1타 강사 김영한님의 강의였다! 김영한님의 강의로 스프링 공부를 한터라 실제로 너무 뵙고 싶어서 이 세션은 1순위로 생각하고 있었다.
앞쪽에서 뵙고 싶어 일찍부터 줄을 서서 기다리다가 맨 앞줄에 앉았는데 김영한님이 멀지 않은곳에 앉아 계셔서 사진도 찍고 , 강의 잘 듣고 프로젝트를 진행하면서 체화시켰다고 자랑도 했다. 하핳
김영한님의 세션 주제는 주니어 개발자의 성장이였다. 자신의 경험을 기반으로 여러 조언을 해주셨는데
현재 팀에서 사용하는 기술 vs 최근 (최신?) 업계 사용 기술 무엇을 공부하는게 맞을까요?
이 질문에 대해서는 팀에서 사용하는 기술을 먼저 익히고 팀에게 신뢰를 쌓은 후에 그 신뢰를 기반으로 새로운 기술을 도입을 추진하는게 좋을꺼 같다고 얘기하셨다. 아직 그런 경험은 하지 못했지만 확실히 자기 팀의 업무 기술도 잘 못하면서 다른 기술을 사용하려 하는것 보다 잘 파악한 후에 다른 기술로 바꾸는게 더 성장하지 않을까? 라는 생각이 들었다.
기술적인 부분만 추구하지 말자
이 파트는 김영한님이 가장 후회하시는 부분이라고 얘기를 시작하셨다. 주니어 시절에 항상 비즈니스적인 부분보다 기술적인 것만 추구하고 공부를 했다고 하셨는데 이렇게 하면 큰 숲을 못보고 하나의 퍼즐 조각같은 작업만 하게되어 어느순간 성장이 멈출거라 하셨다.
이 내용은 위 글과도 비슷한 맥락으로 개발자는 단순히 코드만 치는게 아니라 비즈니스를 전반적으로 이해하고 요구사항에 맞게 문제를 해결하는 능력이 중요하다고 한번 더 느꼈다.
그 외 다양한 조언들
위 두 질문 외에도 성장을 위해 여러 조언을 해주셨는데 이를테면 너무 안전하게만 있지 말고 용기를 약간 내어 도전을 해야한다, 추상화나 최적화 같은것도 분명 필요하고 고려해야 하지만 처음부터 너무 고민하지 말고 일단 단순하게 작성하고 추후 고쳐나가는 방향으로 해도 괜찮다 등등 들으면서 많이 와닿고 꼭 기억해야겠다 싶은 좋은 조언들이였다.
이러한 조언들, 내 가치관등을 기반으로 열심히 꾸준히 공부하면서 성장해 언젠간 나도 누군가에게 조언을 해줄 수 있는 사람이 되고 싶다.
점진적 추상화
이 세션은 추상화에 대해서 자세한 코드 예시로 설명을 해주셨다. 내용은 크게 3가지로 나눌 수 있는데
- 추상화의 방향
- 추상화의 정도
- 추상화의 시기
이다.
어플리케이션을 개발하다 보면 어떤 기능이나 요구사항이 추가되거나 변경될지 모르고 특정 기능만 유독 디테일이 많아지고 발전할 수도 있다. 이럴때 이러한 방향에 맞춰 추상화를 해야 최소한의 비용으로 최대한의 이득을 낼 수 있다 라는 내용이었다.
사실 아직은 경험을 직접 해보지는 못했지만 예시로 이해를 할 수 있었고 언젠가는 분명 마주하게 될 상황이라는 생각이 들었다.
추상화의 정도도 자세한 코드를 예시를 들어주시면서 너무 추상화 할 경우 인터페이스마저 변경하게 되어 사실상 의미가 없어질 수 있으므로 필요한 만큼만 적절히 추상화를 해야한다는 내용이었다. 예시가 잘 기억이 나지 않는다... 기억보단 기록을…. 을 한번 더 생각하게 되었다.
추상화 시기가 제일 기억에 남고 도움이 되었던 내용이였다. 코드를 작성하다가 한 방향으로 추상화를 하고 다른 기능을 추가하게 된다면 보통 그 추상화에 맞춰서 코드를 확장하려 한다.
근데 이때 예시 코드의 추상화를 전부 없애고 맨 처음 날것의 코드로 다시 보니 다른 방향으로 추상화를 하면 훨씬 더 간결하고 좋은 코드를 작성할 수 있었다.
좋은 추상화는 더 많은 맥락에서 나온다고, 추상화에 맞춰서 코드를 작성하는것도 좋지만 때로는 잠시 뒤로 돌아가 지금 추상화의 방향이 알맞는지, 조금 더 나은 방향이 있는지 등을 날것의 코드를 보면서 인사이트를 얻을 수 있겠다고 생각을 했다.
스프링과 함께 더 나은 개발자 되기
내 마지막 세션도 이 업계에서 굉장히 유명하신 토비님의 강의였다. 세션 초반에는 토비님이 처음에 스프링을 접하게 되고 어떻게 공부를 하고 어떤 경험을 하셨는지 가벼운 얘기를 해주셔서 너무 재밌게 들었다.
관련 얘기를 해주시면서 DI, IOC 에 대한 공부와 디자인 패턴을 스프링과 함께 엮어서 얘기해주시면서 역사, 유명한 책들을 추천해 주셨다.
또 공부를 할 때 모든 내용을 다 정리하는 것보단 내가 한문장으로 정의할 수 있게, 그 후는 1시간동안 설명할 수 있게 그 후는 간단한 세션을 열 수 있게 마지막은 책이나 인프런 강의를 만들 수 있게 공부를 해야한다고 설명해주셨다.
공부한 내용을 노션에 정리하고 몇몇 개는 블로그에 올리고 있는데 해주신 말씀을 기억하면 무작정 옮기기 보단 나만의 언어로 표현을 하는 연습을 해봐야겠다!
결론
테크쇼는 내가 놓쳤던 부분, 공부해야할 부분을 알 수 있고 무엇보다 그 어떤 것 보다 날 동기부여 시켜준다. 나도 더 공부해서 저 사람들과 토의를 해보고 싶고 언젠가 저 단상위에 오르고 싶다는 생각을 하며 글 작성을 마친다.
'일상' 카테고리의 다른 글
실용주의 기술 블로그 글쓰기 강의 후기 (3) | 2024.05.19 |
---|---|
온보딩 프로젝트 회고 (1) | 2024.01.21 |
현대차그룹 소프티어 meetup 1기 후기 (0) | 2023.05.25 |