inanJeong
이난's 프로그래밍 지식 사이트
inanJeong
전체 방문자
오늘
어제
  • 분류 전체보기 (83)
    • 회고록 및 개발일기 (4)
    • Advanced (0)
    • Python (18)
      • 파이썬 기초 (0)
      • 파이썬스럽게 개발하기 (6)
      • Django (5)
      • 고성능 파이썬 (0)
      • matplotlib (3)
      • Error (4)
    • 기타 (61)
      • Shell Script (2)
      • 라즈베리파이 (5)
      • 티스토리 꾸미기 (2)
      • 알고리즘 (2)
      • 소프트웨어 개발론 (0)
      • JIRA(프로젝트 관리 도구) (1)
      • git (1)
      • Swagger (1)
      • docker (2)
      • web_server (2)
      • MySQL (2)
      • front_end (3)
      • javascripts(typescript + ES.. (5)
      • ServerSideApplication (1)
      • Data Engineering (5)
      • flutter (2)
      • JSP (10)
      • Spring boot (5)
      • React (3)
      • elasticSearch (1)
      • AWS (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

인기 글

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
inanJeong

이난's 프로그래밍 지식 사이트

[회고록] 2021년 기술 회고록
회고록 및 개발일기

[회고록] 2021년 기술 회고록

2022. 4. 28. 13:50

1. 프로젝트 A

요약: 클라우드 웹 기반의 NIA 연구개발 프로젝트(KACI, CSAP 취득이 핵심)
  - 신입 PM(개발외 문서 및 일정관리 담당)과 2인프로젝트 진행

 

1. 공공 NCP을 이용한 전체적인 Dev/Ops 진행(Centos7.4, Apache2.4.6, PHP5.6, Cloud for MySQL, DNS, SSL/TLS...)

  - SSL을 처음 적용해보았는데 재밌었음

 

2. HTML, CSS, javascript, jQuery, AJAX을 이용한 전체적인 프론트개발

  - 작년에 배웠던 CSS의 Flex 기능이 빛을 보았음.

 

3. PHP5.6을 이용한 전체적인 백엔드개발

  - 보일러 플레이트가 없었으며, 디버깅, 타입체크 등 대부분의 기능을 사용할 수 없어 개발이 너무!! 불편했음.

       - 특히 세미콜론 빠진거 하나로 한시간 넘게 고생..

  - Django, spring, node express 등 3세대 프레임워크의 필요성을 뼈저리게 경험.. 2세대 프레임워크 사용하지 마시길..

 

1-1 프로젝트 A1. 클라우드 확인제(KACI) 획득

  • 서버 아키텍처, 서비스 프레임워크, software Stack 등의 문서를 작성하였음
    • 아키텍처는 web architecture 101 기반으로 작성 하였음. 
      • https://medium.com/storyblocks-engineering/web-architecture-101-a3224e126947
 

Web Architecture 101

The basic architecture concepts I wish I knew when I was getting started as a web developer

medium.com

  • 사용자 중심의 요청기반 셀프서비스
    • 사용자는 서비스를 직접 선택할 수 있다.
    • 필요 및 요청에 따라 언제든 구독 취소 및 변경이 가능하다.
  • 범용 네트워크 접속
    • Apache2.4.6 기반의 서버 구축
    • DNS구매 후 적용
  • 신속한 탄력성
    • 트래픽 부하를 해결하기 위해 Auto scaling 기능 사용
  • IT자원의 공동이용
    • 각 테넌트가 IT 자원을 공동 이용 및 보완을 위해 테넌트 회원가입 시 테이블을 동적으로 추가하는 방법을 사용함.
  • 서비스 측정
    • 서비스를 측정하기 위해 클라우드에서 제공하는 모니터링 기능을 활용

 

1-2 프로젝트 A2. 클라우드 보안인증(CSAP) 획득

  • CSAP 인증을 받기 위해 SSL/TLS 서버에 적용
  • SSL 서버 보완 진단 실시
    • 보완 진단 실시할 때 높은 점수를 받기위해 많이 힘들었음.

SSL 서버 보완 진단

  • 접근 통제 - 접근기록 주체 정의,  보안 로그 생성
  • 강화된 인증 수단 제공(이메일 OTP 실시)
  • 사용자 패스워드 관리
    • 비밀번호 생성 규칙 적용(숫자, 문자, 특수문자를 이용한 조합규칙 및 비밀번호 길이(9자 이상) 등
    • 로그인 횟수 제한(최대 5회)을 설정하고 이를 초과하는 경우 해당 계정 잠금 수행
    • 비활동 기간(1시간)이 초과하는 경우 해당 세션 만료
    • 동일 권한 또는 동일 계정으로 동시에 로그인 제한을 수행하는 기능 적용
    • 로그인 수행 시 불필요한 피드백을 제한
    • 비밀번호 입력 시 비밀번호 숨김처리 적용
    • 패스워드 분기별 변경(3개월)
    • 패스워드 변경 시 기존 패스워드 사용 금지
    • 일방향 해시함수 적용
  • 데이터 폐기 정책 수립
  • 안전한 코딩표준 및 규약에 따라 구현 ex) 사용자 입력 데이터 유효성 확인, SQL 삽입방지 등
  • 개인정보 파기 정책 수립

 

2. 프로젝트 B

요약: 산업통상자원부 연구개발 프로젝트
  - 안드로이드 개발자, 백엔드 개발자와 협업

 

1. 라즈베리파이 프로그램 개발

  - 

2. 웹 개발

  - 백엔드 사수 개발자가 직장을 그만두면서 추가적인 백엔드 유지보수를 담당하게 되었음

  - 추후 개발된 머신러닝과 웹 사이트 연동하기 위해 php를 사용하여 개발 진행

 

3. 머신러닝 학습 및 서비스 프로그램 개발

 

2-1 프로젝트 B1. 라즈베리파이

 

2-2 프로젝트 B2. 머신러닝

 

 

3. 프로젝트 C

요약: NIA 인공지능 데이터 구축 사업
  - PM 지시의 1인 개발 진행

 

1. 데이터 전처리

 

2. 데이터 가공 프로그램 

 

3. 데이터 후처리

 

3-1 프로젝트 C1. 파이썬 프로그램 개발

오픈소스 

 

4. 프로젝트 D

요약: NIA 인공지능 데이터 구축 사업
  - PM 지시의 1인 개발

4-1 프로젝트 D1. 딥러닝

  • YOLOv5를 이용한 학습 및 추론
  • DeeplabV3+ xception을 이용한 학습 및 추론
  • Mask R CNN을 이용한 학습 및 추론

 

'회고록 및 개발일기' 카테고리의 다른 글

[개발일기] 개발도서 도전(Last Update: 2023.12.12)  (0) 2023.12.12
[개발일기] 트레이드 오프(trade off)  (0) 2022.08.17
저를 소개합니다.(Last Update: 2023.12.09)  (0) 2020.05.12
    '회고록 및 개발일기' 카테고리의 다른 글
    • [개발일기] 개발도서 도전(Last Update: 2023.12.12)
    • [개발일기] 트레이드 오프(trade off)
    • 저를 소개합니다.(Last Update: 2023.12.09)
    inanJeong
    inanJeong
    저작권 문제시 이메일 발송 부탁드립니다.(해당 게시글 바로 내리겠습니다.) ghjklla007@naver.com

    티스토리툴바