미리보기
기본 정보
저는 2년제 대학에서 인공지능소프트웨어 전공으로 공부하고 있는 학생입니다. 현재 졸업을 앞둔 학생으로 자바스크립트, 타입스크립트, 리액트, 플러터, 다트, 파이어베이스, 와 같은 다양한 프로그래밍 언어와 프레임워크를 학습했으며 사용할 수 있습니다. 저의 열정적인 태도와 적극적인 의사 표현 덕분에 새로운 기술을 빠르게 습득하고 프로젝트를 완료하는 데 탁월한 성과를 내었습니다. 주어진 업무에 최선을 다하며 끊임없이 성장하고 발전하기 위해 노력하겠습니다. 함께 일하는 동료들과의 협력과 의사 소통을 통해 함께 일하는 모든 분들에게 도움이 되고 싶습니다.
기술 스택
JavaScript, TypeScript, React, Flutter, Firebase, dart, Java, Oracle, Spring Boot
프로젝트
Project : React,Firebase를 활용한 Twit프로젝트
개인프로젝트
2024.07. ~ 2024.08.
Description
짧은 메시지를 작성하거나 이미지를 트윗에 첨부하여 공유를 할 수 있는 애플리케이션
(Github)
Experience
인증(Authentication) : 앱에서 사용자를 인증하고 관리하는데 필요한 기능 구현
저장(Storage) : 파일의 업로드같은 앱에서 사용자 생성 콘텐츠를 저장하고 제공하는 데 필요한 도구와 서비스 구현
Tech Stack
Web : React
TypeScript
JavaScript
Database : Firebase Database
Project : Flutter 모바일 애플리케이션 프로젝트
개인
2024.06. ~ 2024.08.
Description
음식 주문 애플리케이션으로 다양한 가게의 메뉴를 확인하고 간편하게 주문할 수 있는 서비스 구현
(Github)
Experience
주문, 결제 등의 사용자에게 보여지는 Widget을 구현하기 위한 Flutter 사용
사용자에게 보다 정확하고 편리한 위치 기반 서비스를 제공하기 위한 지도 연동
Teck Stack
App : Flutter
Dart
Database : Firebase Database
Project : Socket.io로 실시간 채팅 애플리케이션만들기
개인
2023.12. ~ 2023.12.
Description
채팅방에 접속해서 실시간으로 채팅이 가능한 애플리케이션
(Github)
Experience
웹 소켓 통신 : WebSokcet을 사용하여 클라이언트와 서버 간에 지속적인 연결을
유지하며 양방향 통신 기능 구현
채팅방 구현 : 네임스페이스를 지정해 채팅방 별로 메시지를 통신
Tech Stack
Skills : TypeScript
Socket.io
Project : 바닐라 자바스크립트 영상 업로드 사이트
개인
2023.06. ~ 2023.07.
Description
사용자의 영상을 업로드하여 공유할 수 있는 웹사이트
(Github)
Experience
AWS S3 : 영상 파일을 효율적으로 저장 및 관리하기 위한 시스템 구축
Node.js와 Express를 사용하여 백엔드 서버를 구축하고 Heroku사이트에 배포
Teck Stack
Web : JavaScript
HTML
CSS
Server : Node.js
MongoDB
포트폴리오
교육
한국폴리텍성남캠퍼스
대학교(전문학사) | 인공지능소프트웨어
2023.03. ~ 현재 | 재학 중
한림대학교
대학교(학사) | 생명과학과
2014.03. ~ 2017.02. | 중퇴
자기소개
"기술에 관심이 많은 개발자"
처음에는 최신 기술을 배우는 것에 대해 흥미를 가져서 웹 프론트엔드에 관심이 많았습니다.
HTML, CSS, JavaScript를 기본적으로 배우면서 Node.js를 통해 '동영상 업로드 사이트'를 만들었습니다.
사이트를 만들면서 header나 footer 같은 Semantic 태그들을 왜 사용하는지 몰랐는데 클린 코드가 중요하듯이 문서를 볼 때 홈페이지 구성 요소가 알아보기 쉽게 만드는 것이 중요한 것을 깨달았습니다.
이렇게 웹 페이지를 개발하면서 앱 개발 분야에 관심이 생기면서 Flutter를 알게 되었습니다.
직접 로그인, 회원가입 기능을 구현하려면 인증된 사용자인지 확인하는 세션 처리에서 그 세션으로 데이터베이스와 저장소에 접근해도 문제가 없는지 확인하는 보안처리, 비밀번호 찾기, 아이디 찾기, 비밀번호 변경 등등 복잡한 것들을 구현해야 했는데 FireBase는 이를 모두 제공하면서 Flutter에서 앱 개발이 단순하게 웹 개발을 했을 때보다 편했습니다.
아직은 간단한 로직만 구현하지만 기본기를 다지고 있습니다.
Flutter로 앱 개발을 진행하면서 다른 크로스 플랫폼 프레임워크를 비교할려고 React native를 사용해보기위해
React로 프로젝트를 진행하고있습니다.
아무래도 화면에 보이는 프로젝트를 진행하다보니 바닐라 자바스크립트로 프로젝트를 진행했을때보다 React를 사용하니 동적으로 변화하는 데이터의 상태관리를 Recoil을 사용해 원활하게 진행이 가능했습니다.
"팀원들과의 협업 능력"
개발자는 협업이 필수라고 생각합니다. 실제로 팀 프로젝트를 진행을 하다 보면 기획, 디자인, DB설계, 등 혼자서 진행을 하면 자신에 맞게 할 수 있지만 팀 프로젝트의 경우는 기본적으로 소통을 하면서 진행하게 됩니다.
자바로 프로젝트를 진행하면서 기능 명세서를 작성하기 위해 은행에서 필요한 기능이 무엇인지 소통을 하면서 DB에 필요한 컬럼과 키를 설정하고 프로젝트 진행하니 팀원들과 쉽게 진행을 할 수 있었습니다.
실제 업무를 하다보면 서로가 작성한 메서드를 가지고 소통을 하게 될 수 있는데 비동기 처리에 대한 기능을 설명을 하면서 부족한 지식을 팀원이 보완을 해주고 저도 서버의 데이터를 화면에 동적으로 출력을 해주는 법을 알려주면서 서로 부족한 점들을 채워가면서 팀워크를 다졌습니다.
저는 프로젝트를 할 때 항상 제가 맡은 역할을 수행하면서 제가 가진 정보들을 공유하고 피드백도 수용하면서 팀원들과 문제를 해결해 나갔습니다.
"세상에서 쓸모없는 것은 없다"
저는 '이 세상에서는 쓸모없는 것은 없다'를 중요한 가치관으로 생각하고 있습니다.
개발을 진행할 때 기본적으로 눈에 보이는 결과물을 만드는 것이 최우선인 줄 알았습니다.
결과물을 만들기까지의 과정을 경험하면서 기획단계에서 부터 순서도, 데이터베이스 ERD, 기능 명세서 같은 부분을 시각화하고 문서로 작업하여
협업하거나 사용하는 이해관계자들에게 설명하고 이해를 시키는 과정도 결과를 만드는 것 만큼 중요하다는 것을 깨달았습니다.
프로젝트 발표를 여러차례 하면서 종종 들었던 얘기는 도출된 결과물에 비해 발표 내용이나 스킬이 부족하여 10% 정도밖에 표현하지 못했다고 들었습니다.
당시에는 결과물만 만들면 끝이라 생각을 했고 발표자료나 문서작업이 다소 불필요하고 번거롭다고 여겨졌던 생각이 바뀌면서 생각과는 다르게 중요한 것들이 있다는 것을 깨닫게 되는 계기가 되었습니다.
저의 '세상에 쓸모없는 것은 없다'라는 가치관으로 그 이상의 가치를 배울 수 있다는 자세로 더욱 나아가는 개발자입니다.