- 많은 SW 엔지니어들이 SW에 대한 열정 없이 일 함
- 단순히 좋은 급여를 받기 위해 일하지만, 열정이 없으면 결국 성과가 저하됨
- 좋은 엔지니어는
- 엔지니어링의 본질을 이해하고 깊이 있는 지식을 쌓아야 함
- 새로운 기술을 지속적으로 배우고 비판적으로 접근해야 함
- 실전에서 배운 지식을 적용하고 개선하는 습관이 필요
무엇이 좋은 엔지니어를 만드는가
- 엔지니어 정의
- "과학적 원칙을 적용해 문제를 분석하고 설계, 코드 작성, 제작, 창조 등을 통해 문제를 해결하고 세상을 더 나은 곳으로 만드는 사람"
- SW 엔지니어 요구 역량
- 컴퓨터 작동 원리 이해
- HW, SW 상호작용 방식에 대한 깊은 이해 필요
- 추상화된 언어나 기술에만 의존하지 않고 기초부터 학습해야 함
도메인에 대한 깊이 있는 이해
- 기초 원리에 대한 강력한 이해가 필요함
- HW 엔지니어 ⇒ 재료의 특성과 응용 지식
- SW 엔지니어 ⇒ 메모리와 CPU의 작동 원리 이해
- 기초 원리에서부터 학습해야 함
- HTTP, 메모리 구조, 시스템 동작 등 기본 개념에 대한 깊은 이해 필수
- 상위 레벨에서 시작하지 말고 기초부터 쌓아가야 함
지속적인 학습
- 최신 기술 및 개발 동향을 계속 학습해야 함
- 새로운 기술 장/단점 비판적 분석 필요
- 학습 과정에서 발견한 새로운 주제에 대해 더 깊이 파고들기
기술의 한계와 문제점 이해하기
- 도구나 언어의 장/단점 명확히 이해
- 특정 언어나 도구를 과도하게 신봉하는 태도 경계
⇒ 늘 변화하는 IT, 과거의 지식이 현재에도 맞다고 보장할 수 없음 - 프로젝트에 맞는 최적 도구 선택 중요
실전에서 지식 적용하기
- 이론만 알아서는 의미 없음
- 실전 적용 예시
- 소규모 프로토타입 구축
- 일상에서 발생하는 문제 해결
- 배운 내용 다른 사람에게 설명하고 가르치기
더 나은 엔지니어가 되는 방법
비판적 사고 능력 키우기
- 비판적 사고는 엔지니어링의 핵심 요소
- 비판적 사고가 부족하거나 이를 소홀히 하면 비효율성과 복잡성을 초래함
- 비판적 사고 능력 강화하기
- 새로운 개념을 접할 때 무조건 받아들이지 말고 효과성과 타당성을 검토해야 함
- 특정 접근 방식의 장/단점과 대안을 논리적으로 분석해야 함
더 많은 책 읽기
- 독서는 지식을 습득하는 효과적인 방법
- 단순히 책의 내용을 받아들이지 말고 비판적으로 접근해야 함
- 비판적으로 읽기 위한 질문 예시
- "이 접근 방식에 문제가 있는가?"
- "더 나은 방법이 있는가?"
- "내가 다르게 한다면 어떻게 할 것인가?"
- "이 책에서 설명하는 내용이 실제로 옳은가?"
- 노트 작성 습관 기르기
- 배운 내용과 생각을 정리하고 기록
- 모르는 주제가 언급되면 추가로 조사
배운 지식을 프로젝트에 적용
- 이론에서 실전으로 연결
- 배운 내용을 실제 프로젝트에서 적용해야 진정한 학습이 이뤄짐
- 개념을 실제로 구현하면서 깊이 있는 이해 가능
- 작은 프로젝트나 프로토타입이라도 직접 만들어 보는 것이 중요
- 실전 적용 과정에서 얻는 이점
- 이론에서는 보이지 않던 실제 문제 직면
- 문제 해결 과정에서 지식 구체화 & 개선 가능
- 문제 해결 능력과 논리적 사고력 강화 됨
- 배운 내용을 적용하는 방법
- 작은 프로토타입 구축
- 새로운 프레임워크, 언어, 개념 학습 후 작은 프로젝트 시도
(예. DB 인덱싱 학습 후 간단한 검색 시스템 구현 및 성능 비교) - 실제 문제 해결
- 일상이나 작업에서 발생하는 작은 문제 해결해 보기
(예. 반복 수작업 자동화, 성능 저하 문제 개선 등)
- 일상이나 작업에서 발생하는 작은 문제 해결해 보기
- 배운 내용 가르치기
- 새로운 프레임워크, 언어, 개념 학습 후 작은 프로젝트 시도
- 지속적으로 지식을 적용하면 이론적 이해가 실전 역량으로 전환되며, 더 유능한 엔지니어로 성장 가능
자기 코드 평가 및 개선
- 자기비판은 뛰어난 엔지니어의 핵심 습관
- 자기 평가의 목표
- 스스로에게 과도하게 엄격해질 필요는 없음
- 지속적인 개선의 기회를 찾는 것이 핵심
- 코드를 작동시키는데 만족하지 말고 성능, 유지보수성, 가독성 개선 방안 탐색
- 지속적인 자기 평가의 효과
결론
- 기본 원리의 깊은 이해 + 비판적 사고 + 실전 적용이 핵심
- 배우고, 적용하고, 끊임없이 개선하는 태도 필요
- 최고 엔지니어의 특징
- 배움을 멈추지 않고 새로운 지식을 습득
- 자신의 가정을 끊임없이 의심하고 개선 방안을 찾음
- 배운 지식을 실제 문제 해결에 적용하고, 동료와 협업하며 성장함
- 연지니어링은 평생의 여정
- 호기심, 꾸준함, 성장에 대한 의지 필요
셀프 요약
본질, 기초에 대한 이해
깊이 있는 지식 습득
꾸준한 학습과 성장
- 최신 기술 및 개발 동향 파악
- 더 많은 책 읽기
비판적 접근
- 새로운 기술 장/단점 비판적 분석
- 예시
- "이 접근 방식에 문제가 있는가?"
"더 나은 방법이 있는가?"
"내가 다르게 한다면 어떻게 할 것인가?"
"이 책에서 설명하는 내용이 실제로 옳은가?"
- "이 접근 방식에 문제가 있는가?"
배운 지식 적용
- 소규모 프로토타입 구축
- 일상에서 발생하는 문제 해결
- 배운 내용 다른 사람에게 설명하고 가르치기
작동 원리 이해
상호작용 방식에 대한 깊은 이해 필요
도구나 언어의 장/단점 명확히 이해 + 대안을 논리적으로 분석
기록하는 습관
동료와 협업
출처 - Geeknews
'QA > 밥벌이' 카테고리의 다른 글
IC(Individual Contributor), EM(Engineering Manager) (0) | 2025.04.29 |
---|---|
커리어 컨설팅, 취업컨설팅 (2) | 2025.02.28 |
QA에 관한 성찰 (6) | 2025.02.17 |
QA로써 성과와 업적에 대한 고찰 (2) | 2024.07.04 |
원티드 AI 이력서 리뷰 결과 (0) | 2024.06.27 |