"Face Recognition Cosmetics Trial MakeApp"
저는 4학년 때 ‘Software Engineering’ 수업을 수강하면서 ‘MakeApp’ 어플리케이션을 제작한 경험이 있습니다. 팀 프로젝트로 수업시간에 배웠던 소프트웨어 엔지니어링의 과정을 배우고 그 과정을 직접 프로젝트에 적용하는 실습입니다. 아쉬운점 1프로젝트에서 제작한 ‘MakeApp’은 Face Recognition Cosmetics Trial 서비스해주는 어플리케이션입니다. 기본적인 카메라 어플리케이션에 얼굴 인식을 통해 화장품을 직접 얼굴에 trial해보고 구매를 위한 웹사이트를 연결해주는 기능을 하고 있습니다.좋은점 1
이 프로젝트가 흥미로웠던 이유는 두가지입니다. 아쉬운점 2
첫 번째로 소프트웨어 엔지니어링 문서화 작업이 굉장히 중요하다는 것을 깨달았습니다. 소프트웨어를 기획하고 구현하기 위해 크게 User Requirements, Design, Testing, Maintenance의 과정을 거칩니다. ‘설계도’와 같은 소프트웨어 엔지니어링은 막연히 머릿속으로 기획하고 바로 코딩으로 진행했던 프로젝트와 다른 느낌을 주었습니다. 팀원들과 Requirements 별로 구현을 나눠 진행하여 좀 더 체계화되고 빠른 분산 작업을 할 수 있었습니다. 저는 구현 단계에서 네트워크를 통해 REST API를 크롤링하는 ‘View Cosmetics Information to Buy’를 포함한 3가지의 Requirements를 맡아 구현하였습니다.
가장 인상 깊었던 경험은 Testing 단계입니다. 저에게 있어 프로그래밍 후 처음으로 경험한 테스팅이었습니다. Requirements를 기준으로 Testing을 진행하였는데 이때 미리 잡아놓은 Software Structure가 얼마나 중요한지 깨달았습니다. 실제로는 큰 문제는 없었지만, Testing scope를 미리 정해 놓아 어느 부분을 체크해야 하는지 세세히 알 수 있었습니다. 좋은점 2
이전에도 ‘도메인 분석 및 SW설계’라는 과목에서 엔지니어링 문서화 프로젝트를 진행한 적이 있지만, 많은 시행착오를 겪어 어려웠던 기억이 있습니다. 하지만 이 프로젝트에서는 저에게 있어 두 번째로 진행한 엔지니어링 작업이라 좀 더 편안하고 익숙한 느낌을 받았습니다.
아쉬운점 3
두 번째로 영어 수업으로 처음으로 외국 친구들과 함께 작업한 프로젝트여서 기억에 많이 남는 프로젝트입니다. 프로젝트를 진행하는 동안 외국 친구들과 한국 친구들이 모두 같은 소프트웨어를 만든다는 생각으로 약 4개월간 소통을 이어갔습니다. 리더인 외국 친구의 리더십에 감명을 받았고 프로그래밍 언어는 만국 공통의 언어라는 것을 직접 느낀 경험이었습니다.아쉬운점 4
"Software Engineer의 꿈"
저는 차근차근 SW 관련 과목들을 수강하면서 소프트웨어 엔지니어링의 자질을 갖추기 위해 노력하였습니다.
1, 2학년 때는 C언어를 시작으로 기본적인 프로그래밍 지식과 스킬을 쌓았습니다. 기초 프로그래밍 과목에서 좋은 성적을 받아 소프트웨어 엔지니어의 꿈을 가지기 시작하였습니다. 그리고 2학년 때는 ‘운영체제’와 ‘컴퓨터 구조’ 과목을 들으며 MIPS Simulator와 Shell 구현과 같은 과제로 기본적인 컴퓨터 지식과 프로그래밍 능력을 키웠습니다.
3, 4학년 때는 ‘도메인 분석 및 SW 설계’와 ‘Software Engineering’ 그리고 프로젝트 과목들을 들으면서 실질적인 SW 프로젝트를 진행하였습니다. 과목들을 수강하면서 단순히 개발하는 것이 아닌 Requirements, Design, Testing, Maintenance와 같은 소프트웨어 엔지니어링 구체화/문서화가 굉장히 중요하다는 것을 깨달았습니다.
또한, ‘모바일 프로그래밍’ 수업의 ‘SmartHome IoT’ 어플리케이션 개발을 하였습니다. Raspberry Pi를 사용해 센서를 작동시키고 블루투스 연결을 통해 모바일에서 컨트롤하는 기능을 구현하였습니다. 처음으로 실질적인 프로젝트를 진행하여 굉장히 설레며 구현을 했던 기억이 있습니다. 실제로 모델하우스를 제작하여 Demo application을 발표했습니다.아쉬운점 5
아쉬운점 1 첫 부분은 수강한 SW과목부터 제시해야 합니다. 이 내용을 쓰라고 한 이유는 이 업무가 SW개발 관련 지식이 필요한 직무이기 때문입니다.
좋은점 1 간단 명확하게 프로젝트 개요를 설명한 점이 좋습니다.
아쉬운점 2 질문을 제대로 읽지 않은 것 같습니다. 흥미로웠던 것을 쓰라고 한 것은 과목입니다. 프로젝트가 아닙니다.
좋은점 2 개발과 테스팅을 구분하여 정리한 점이 좋습니다. 다만 테스팅을 좀 더 구체적으로 제시하면 더 좋겠습니다. 무엇을 깨달았고, 무엇을 알 수 있었다는 내용보다는 업무 자체에 비중을 두고 쓰면 더 좋겠습니다.
아쉬운점 3 수강한 SW과목은 글 서두에 나열해 줘야 합니다.
아쉬운점 4 무엇을 느끼고 감명받았다는 내용보다는 어떤 개발 프로젝트인지를 설명하는 것이 더 호감을 줄 것입니다.
아쉬운점 5 내용이 잘못된 것은 아닙니다. 이 내용이 맨 처음으로 가야 지원자에게 더 호감을 가질 수 있습니다.