Conference & Lecture

[특강] 학교 특강 / 개발자의 업무 수행과 기술

Bay Im 2024. 5. 25. 17:48
  • 업무 수행
    • 학습
      • CS 지식(OS, Network, Data Structure, 자료 구조)
      • 앞으로 겪을 새로운 업무
      • 기술의 흐름(프레임워크 등)
      • 원리 파악(3 Tier 웹 서비스(Client, App Server, DB))
    • 태도
      • 서비스의 개발
        • 협력과 커뮤니케이션(단순히 코딩만 하는 것이 아님)
        • 누군가의 이슈는 모두의 이슈
      • 협력과 존중
        • 리스크를 사전에 공유하고 일정을 조정
        • 다른 사람을 위한 코드를 작성, 인수인계
      • 업무 대응
        • 자신이 가장 잘 할 수 있는 분야를 가지기
        • 모르는 것을 부끄러워 하지 않기
    • 책임
      • 서비스를 고객에게 제공하는 일
      • 맡은 일을 일정 안에 해결하는 것
        • 시스템 간의 연계를 포함
      • 서비스의 품질
    • 일정
      • 품질 + 일정 모두 맞추기
      • 합리적인 일정 산출
        • 설계에 참여할 것
        • 팀원을 속이지 않는 것 (줄이거나, 크게 잡거나)
      • 일을 작게 나누기
      • 정해진 시간에 정해진 업무량이 나오지 않는다는 것을 생각
  • 기술
    • 개발 능력
      • 숙련도
        • 시간의 투자가 필요
      • 설계 능력 확보
      • 다른 사람의 코드 이해
      • 서비스와 규격의 이해
      • 레이어를 구성
        • 공통 모듈, 드라이버, 인터페이스 영역 등
      • 공개된 자료에 현혹되지 않을 것
      • 주석이 필요 없는 코드를 작성
      • 명확히 하나의 룰과 패턴 유지
      • 문제를 외부에서 찾지 않기
      • 문서화
    • 서비스 이해
      • 서비스의 시스템 구성
      • 컴퓨터 기초(운영체제, 네트워크)
      • 설계에 참여
      • 문서(DB 정의서, 인터페이스 정의서)
    • 데이터 구조
      • 데이터 타입
      • 데이터의 초기화, 적절한 활용
      • 사용한 메모리의 정리
    • 문제 해결
      • 프로젝트 일정의 키 요소
      • 일을 작게 만드는 것
      • 서비스 이해, 경험, 개발 능력
      • 예) 성능 최적화, Replay Protection, 로직의 변경, 레이어를 추가
    • 면접
      • 뾰족한 강점이 필요, 즐겁게 할 수 있는 일
      • 본인의 역할을 명확하게 쓰기
      • 시스템 구성을 잘 알기
728x90