본문 바로가기
TIT

소프트웨어 장인 1장~4장

by 은지:) 2024. 10. 7.
728x90
반응형

 

 

서문

 

일을 어떻게 했느냐는 일을 해낸 것만큼이나 중요하다

최선을 지향하는 습관이 중요함

팀원들도 함께 볼 수 있는 코드를 짜셈

 

 

1장 21세기의 소프트웨어 개발

 

아키텍쳐팀에 있다가 개발팀으로 돌아감. 이유는 개발이 좋았기 때문임

뭐든 다 중요함. 하지만 정말 중요한 건 내가 즐겁게 할 수 있는 걸 따라야함

 

1-1. 고참 개발자 / 새로운 현실

 

고참이란 건 일시적이고 상대적임

과거에는 소프트웨어 프로젝트를 실행할 때 각 담당자가 해야할 일이 구체적이었음

개발자는 진짜 개발만 함

이제 바뀌는 중임

자기 전문 분야 + 비즈니스 관련 조예 필요

 

고객은 많고 빠른 걸 원함

소프트웨어를 빠르게 바꾸면서 품질 유지 가능하다면 짱임

=> 프로페셔널한 개발자를 원함

=> 소프트웨어 개발 방식이 프로페셔널하게 바뀌도록 압력을 받고 있음

 

애자일 + 개발자의 장인 정신 필요함

 

 

2장 애자일

 

유명한 17인이 토른 후에 만듦

애자일은 여러 맥락에 따른 방법론과 테크닉의 조합임

 

1. 절차적인 관점 애자일

 

회의 방식 ~ 진행 상황을 개발팀 밖의 관계자에게 전달하는 방식 - 비즈니스 피드백 방식

 

(개발팀 밖의 관계자에게 전달하는 방식도???)

 

팀에 중요한 것

비즈니스에 가치가 있는 것

에 집중함

 

올바른 목표를 향해 진행중인지 확인하는 것

 

 

 

2. 기술적인 관점 애자일

 

개발 - 확장 - 유지보수 - 제품 출시

의 사이클을 돌며 겪는 어려움에 대해 특정한 기술적 관례나 기술 자체를 가이드함

 

품질에 집중해서 팀이 결과물을 올바르게 만들어가는지

 

목표한 것을 올바르게 실행하고 있는지...

 

 

3. 애자일을 따른다는 것

 

더 빨리 더 짧게 피드백 루프를 만들면 애자일해짐

애자일은 문제점을 빨리 드러나게 해서 피드백을 빠르게 받을 수 있게하는 거임

 

애자일은 첫주부터 동작하는 소프트웨어를 만듦...

소프트웨어에 여러 방면에서 개발팀의 책임이 있다는 인식을 심어줌

미리 세운 계획을 실행(기계적 코딩)이 아닌 요구사항 분석 - 팀 구성 - 분석 - 아키텍처  - 시연 등등 개발자가 수행하기 시작한 거임

 

코드를 잘 짜는 건 개발자의 최소한의 요건임

테스트, 분석, 커뮤니케이션 능력 등등 필요함

 

계획을 따르는 것이 아닌 변화에 대처하는 자세

 

애자일 도입하는 걸 애자일스럽게 하라,,,,

근데 현실을 보면 애자일 써도 별로 소득 없는 거 같음

왜냐면 절차와 소통의 방식이 개선된 것이지 기술적인 산출물은 바뀌지 않았기 때문

 

모든 단계마다 피드백이 있다는 전제에서만 절차의 개선으로 제품이 나아짐

뭔가 더 나은 방법이 있거나 자기 목소리를 내는 프로페셔널한 사람들이 있어야 함

 

절차에 집중하면 공장 노동자와 다를바 없는 개발자만 생김...

 

애자일 전환이 개발자의 역량 향상에 도움이 되었는가?

Xp 페어 프로그래밍 좋음 근데 인건비 낭비라고 잘 안 함

 

기술적 탁월함을 갖추지 못한 소프트웨어 프로젝트는... 비싼 고통의 경험을 할 수 있음

 

완벽하게 테스트되고 쉽게 변경할 수 있는 소프트웨어를 개발할 수 있어야 함

완전한 애자일 전환을 위해서는 기업들이 소프트웨어 장인정신을 품어야 함

 

 

 

 

 

3장 소프트웨어 장인정신

 

 

=> 소프트웨어 장인 정신은 소프트웨어 개발의 프로페셔널리즘에 관한 것이다

 

이념이나 마음가짐에 가까움

주인의식을 가지고 프로페셔널하게 행동하고

다른 개발자들에게 배우고 지식을 나누며 경험이 부족한 개발자들을 멘토링하는 것임

 

하나를 깊게 수행해서 경지에 도달하는 사람의 의미가 아닌

장인이 가지는 마음가짐을 말하는 거 같음....

 

소프트웨어가 오래될 수록 고통과 비용이 아닌 그 가치가 커져야함

좋은 소프트웨어 설계, 자동화된 테스트 기술, 열정있는 개발자 핵심임

 

상대에게 배우는 것은 나아지기 위한 최선의 방법임

 

 

4장 소프트웨어 장인의 태도

 

소프트 장인과 고객의 관계는 생산적인 동반자 관계로 보아야함

 

자기계발

 

1. 책 좋음

커리어를 위해선 애자일 방법론 같은 책 좋음.

실용주의 프로그래머, 디자인패턴 리팩터링 등 고전 먼저 읽기 추천

 

 

2. 블로그 괜찮음. 개발자의 경험을 적는 것 자체로 의미 있음

 

3.

리더를 찾으셈

예를 들면 내가 쓰는 언어를 만든 사람이 어떤 책을 출판하고 어떤 글을 썼는지,

영감을 얻은 부분과 생각의 바탕이 어땠는지...등

 

4. 트위터 좋음 <-??? 차라리 디스코드가 낫지 않나

 

5. 끊임없는 훈련

 

일단 익숙해져야함

몸에 배어야함

그렇게 되면 의식적인 노력이 없어도 자연스럽게 할 수 있게 됨

 

훈련할 때는 작성 가능한 최선의 코드를 만드는데 집중하셈

 

 

6. 오픈 소스 기여하는 것도 좋음

 

7. 페어 프로그래밍 좋음, 근데 아예 모르는 사람이랑하는게 제일 좋음. 새로운 해결방식을 접할 가능성이 있기 때문

어떨 때는 배우고, 어떨 때는 가르치고, 어떨 때는 두 가지 모두 하기도 해야함

 

8. 다른 개발자랑 어울리기

 

9. 배울 내용이 많음을 인정하는 것은 성숙하다는 증거임

 

10. 커리어의 주인이 되셈

 

 

 

 

 

 

 

 

728x90
반응형

'TIT' 카테고리의 다른 글

2024.11.05, weekly memoirs  (5) 2024.11.05
2024.08.18, weekly memoirs  (2) 2024.08.18
2024.07.28, weekly memoirs  (0) 2024.07.28
2024.07.20, weekly memoirs  (0) 2024.07.20
2024.07.14, weekly memoirs  (1) 2024.07.14

댓글