안녕하세요! 길벗 26차 개발자 리뷰어 로 선정되어 "그림으로 이해하는 시스템 설계"를 읽어봤어요. 프론트엔드 개발자지만 시스템설계의 기본이론과 프론트 엔드 개발자로서의 역할은 어떤게 있을지 궁금했거든요!
복잡한 시스템 설계를 그림으로 설명해주는 책인데, 유용한 내용이 많아서 정리해봤습니다!
총 10장으로 구성되어 있는데,
그 중에서도 프론트엔드 개발자에게 더욱 도움이 될만 한 챕터에 강조 표시를 해두었어요!
1. 시스템 설계의 위치와 역할 👍🏻
2. 설계서 작성 이유와 종류 👍🏻
3. 소프트웨어 설계 모델, 프레임워크, 클라우드 기술
4. 전체 아키텍처, 보안, 성능 설계
5. 화면과 인터페이스 설계 👍🏻
6. DB 설계 (ER 다이어그램, 테이블 레이아웃)
7. 로직 설계 (유스케이스, 시퀀스 다이어그램) 👍🏻
8. 네트워크 구성과 설계
9. 서버 사양과 가상화 설계
10. 설계서 활용과 관리 방법 👍🏻
개발자마다 다른 결과물? 당연하지!
같은 기능을 만들더라도 개발자마다 개발 코드는 항상 달라요.
책에서 아주 간단한 예를 보여 주었어요.
그림을 보며 "아... 이래서 코드 리뷰가 중요하구나" 싶었어요. 결과물은 같아 보여도 코드 품질이나 유지보수 난이도는 하늘과 땅 차이가 나잖아요?
나의 개발자 역량은 어느정도 인가, 다시한번 되돌아 볼 수 있었어요.
다들 공감하실만한 내용이죠.. 기능 "개발하기 바빠서 놓치기 쉬운 부분" 성능, 보안, 확장성... 이런 것들을 제대로 안 챙기면 나중에 큰 문제가 될 수 있어요.
마치 집 지을 때 겉모습만 신경 쓰고 기초공사를 대충하는 것과 비슷하달까요? 책에서 이 부분 체크리스트 주는데 간단하게 표로 요약 돼서 좋은것 같아요!
서비스/IT 회사에 다니다보면 항상 겪는 현실적인 내용이었어요. 기획자는 이러고 싶고, 디자인은 저러고 싶고, 다들 의견이 달라서 커뮤니케이션에 들어가는 리소스가 어마어마 하잖아요,
그런데 책에 명시된 표를 보고 내용을 읽다보니 이게 자연스러운 아니.. 당연한 과정이라는 것을 느꼈어요. 당연히 각자의 입장이 다르니까요. 이해하고 나니까 마음이 좀 편해졌어요. 😮💨 실무에서도 항상 마음에 새기고 변경되는 시스템 설계에 대하여 스트레스 받지 않으려고 노력 할거예요!!
공감되는 대목이었어요, 처음엔 완벽하게 설계하려고 스트레스 받았는데, 오히려 그게 독이 될 수 있더라고요.
완벽하지 않더라도 개발하는 과정에서 계속해서 상호작용하고 이를 통해 수정 보완, 개선하는것이 무엇보다 중요함을 다시한번 깨달을 수 있었어요!
불필요한 문서 작업에 시간 낭비하지 말자!
문서 작성할 때 항상 "이거 진짜 나중에 볼까?" 생각한 후 작성하려고 해요! 아무리 열심히 작성한 설계서라 한 들 아무도 보지 않는 설계서가 되면 안되잖아요 😭
책 읽으면서 계속 고개를 끄덕이게 됐어요. 특히 실무에서 겪었던 일들이 자꾸 떠올라서 더 와닿았던 것 같아요.
개발 입문자부터 경력자까지 한 번쯤은 읽어보면 좋을 것 같아요! 👍
시각화가 정말 잘 되어있어요
복잡한 시스템 설계 개념을 그림과 표로 쉽게 풀어냈어요
실무에서 바로 참고할 수 있는 다양한 설계 다이어그램이 제공돼요.
실무에 바로 쓸 수 있어요
현업에서 자주 마주치는 문제들의 해결책을 구체적으로 알려줘요 각 장 마지막에 실무 팁과 조언이 있어서 진짜 도움돼요!
설계서의 가치에 대해 잘 보여줘요
설계서가 단순한 문서가 아니라는 걸 알려줘요
개발, 유지보수, 운영 등 다양한 단계에서 설계서를 어떻게 활용하는지 배울 수 있어요
실제 프로젝트에서 설계서가 얼마나 중요한지 이해하게 됐어요
현실적인 조언이 많아요
완벽한 설계는 없다는 현실적인 관점을 제시해요!
마지막으로, 이 책은 시스템 설계의 세계로 들어가는 첫 걸음을 떼기에 정말 좋은 것 같아요. 실무에서 겪었던 일들이 자꾸 떠올라서 더 와닿았고, 실무에 바로 적용할 수 있는 내용이 많아서 더 좋았어요. 꼭 시스템 설계를 하는 분이 아니더라도 서비스를 만드는 회사에 계시다면 한번 꼭 읽어보시는걸 추천합니다! 👍