자기소개

My Profile Picture

컴퓨터공학과 20202581

김 현 중

Top Languages

나의 기술

JavaScript Image

JavaScript

2024년부터 시작해서 동아리 활동을 통해 사이트 만들기 프로젝트를 하고나서 흥미도 생기고 재미도 있어서 요즘 가장 많이 사용하는 언어입니다. (70%)

C Image

C

1. C 언어를 통해 시스템 레벨에서의 프로그래밍과 메모리 관리에 대한 이해가 깊습니다.

2. 다양한 알고리즘과 데이터 구조를 C로 구현할 수 있습니다.

3. 시스템 프로그래밍, 임베디드 시스템 개발 등 다양한 분야에서 경험이 있습니다. (80%)

C++ Image

C++

1. 기본적인 C++ 문법과 객체지향 프로그래밍 개념을 이해하고 있습니다.

2. C++를 사용하여 간단한 알고리즘과 데이터 구조를 구현할 수 있습니다.

3. STL과 같은 C++의 주요 라이브러리에 대한 이해가 있으며, 기초적인 프로젝트를 수행할 수 있습니다. (30%)

C# Image

C#

1. NET 프레임워크를 활용한 C# 개발 경험이 있습니다.

2. 윈도우 응용 프로그램 개발과 웹 개발에 대한 이해가 있습니다. (50%)

Python Image

Python

파이썬 수업에서 처음 배우고나서, 다른 언어들보다 매우쉽고 앞으로 가장 사용할 일이 많을거같아서 배우고 싶은 언어입니다. (30%)

희망직무

프론트엔드 개발자

DEVS_H 동아리를 통해 처음으로 JavaScript를 배우기 시작했습니다. 크몽을 중개업체로 삼아 우리의 기술을 마켓에 내놓는 계획을 세웠고, 매일 수업 후 동아리방에서 회의를 하며 프론트엔드와 백엔드 업무를 나누어 사이트 제작에 몰두했습니다. 이 과정에서 모르는 부분을 배워가며 깨달음을 얻으며 흥미를 느낄 수 있었습니다. 아쉽게도 동아리가 해체되어 더 이상 활동할 수 없었지만, JavaScript에 대한 흥미를 바탕으로 프론트엔드 개발자로서의 꿈을 키우게 되었습니다.

인프라 구축

2022년 11월부터 2023년 2월까지 미국 LG 에너지솔루션에서 일했습니다. 처음 한 달 반은 디트로이트에 위치한 배터리 팩 공장에서 IT HELP DESK로 근무했는데, 처음에는 어려움이 있었지만 공장의 IT 문제를 해결하고 네트워크 보안을 담당하게 되었습니다. 그 후 나머지 한 달 반은 오하이오의 얼티움셀 공장에서 JUPITER 네트워크 유지보수를 맡아 일했습니다. 이 경험은 정말 운이 좋은 기회였고, 어려운 과제들을 해결하며 네트워크 유지보수 작업에서 큰 흥미와 재미를 느꼈습니다. 이 경험을 통해 미국에서 전과를 결심하고 현재는 컴퓨터 공학 전공으로 전과하게 되었습니다. 지금도 열심히 공부하며 네트워크 관리를 넘어서 인프라 구축에 대한 흥미를 갖고 노력하고 있습니다.

포트폴리오

(이미지 클릭시 GitHub 사이트로 이동하거나 동영상이 실행됩니다.)

원피스 게임

2023년 1학기 프로그래밍 실습에서 실시했던 이 프로젝트는 C언어를 사용하여 개발한 원피스 게임입니다. 게임의 주요 목표는 해적왕이 되기 위해 여정을 떠나는 루피의 이야기를 플레이어가 경험하는 것입니다. 이 게임은 CLI 기반으로 제작되었으며, 플레이어는 루피의 행동을 선택하여 게임을 진행하게 됩니다.

프로젝트 내용:

  • 초기 설정 및 캐릭터 상태 초기화 기능
  • 루피와 크로커다일 간의 전투 시스템 구현
  • 루피의 공격 및 기 모으기 기능 구현
  • 다양한 이벤트(보물상자 발견, 아이템 발견, 전투 이벤트 등) 구현
  • 게임 진행 중 플레이어 상태(소지금, 추가 공격력, 추가 체력 등) 출력 기능

기술 스택 및 사용 도구: C 언어, Visual Studio, GCC 컴파일러

결과 및 성과: C 언어를 사용한 게임 개발 능력 향상, 복잡한 게임 로직과 상호작용하는 CLI 인터페이스 구현 경험

One Piece Game

오징어 게임

2023년 2학기 고급 프로그래밍 실습에서 실시했던 프로젝트로, c언어를 사용해 개발한 오징어 게임입니다. 넷플릭스에서 방영했던 오징어게임을 모티브로 가져와, '무궁화 꽃이 피었습니다', '줄다리기', '제비뽑기', '야간운동' 게임을 통해 차례대로 탈락자를 선정하고 최종 1인이 우승하게 되는 게임입니다.

프로젝트 내용:

  • 무궁화 꽃이 피었습니다 : "무궁화 꽃이 피었습니다" 라는 문구가 한단어씩 1초마다 나오게되는데 문구가 나오는 도중에는 움직여도 되지만, 문구가 다 나오고 이후로 움직이게 된다면 탈락하게 되는 우리가 흔히 아는 무궁화 게임의 내용이다. 0의 플레이어는 내가 움직일수 있고 나머지 플레이어들은 움직이는 방향, 속도도 랜덤으로 움직이게 된다. 또한, 다른 플레이어 뒤에서 움직이면 술래에게 보이지 않아 죽지않고, 술래에게 걸려 죽는 상황이 발생하면 cli 화면에 #번 탈락과 같은 다이얼로그 표시를 해준다.
  • 야간 운동 : 야간 운동은 필드에 아이템과 플레이어들이 랜덤하게 뿌려지며, 사용자는 마찬가지로 0번플레이어를 조작하게 되며, 나머지 플레이어들은 아이템이나, 플레이어들을 자동으로 향하게 된다. 아이템이 없다면 아이템을 얻게되고, 아이템이 있다면 버리고 새로운걸 얻을 수 있다. 플레이어를 만나게 된다면, 강탈, 회유, 무시중 행동을 하게된다.
  • 줄다리기 : 줄다리기는 패자부활전으로 탈락을 했어도 모든 플레이어가 참가하게되고, 줄다리기를 이기면 부활 지면 탈락하는 방식이다. 대신 탈락하지 않았던 플레이어가 지게된다면 아이템을 뺏기는것으로 끝이난다. 플레이어들은 왼쪽, 오른쪽으로 번갈아가며 배치되며, 플레이어들의 힘을 더해 더 큰쪽으로 끌려가게 된다. z로 왼쪽, /로 오른쪽으로 움직이게 할 수 있으며, x를 누르면 왼쪽팀이, .을 누르면 오른쪽팀이 눕게되며 힘이 순간적으로 두배가 되게된다.
  • 제비뽑기 : 제비뽑기는 마지막게임으로 우승자 1명이 남을때까지 반복되며, 스페이스바를 통해 뽑기를 누르고 탈락하는 인원은 매번 뽑을때마다 한명으로 탈락하게 되면 다음라운드로 넘어가 제비뽑기를 이어서하게 된다.

기술 스택 및 사용 도구: C 언어, GitHub을 통한 업로드 및 로그 남기기

결과 및 성과: c 언어 프로젝트 파일을 여러개로 나누어 링크하는법을 이해하고, 여러가지 경우의 수를 나누며 c언어의 이해도 상승, GitHub를 사용해 제출하고 로그를 남김으로써 GitHub에 대해 알게됨

Squid Game

아두이노 미세먼지, 온도, 습도 탐지기

2023년 2학기 임베디드실습에서 실시했던 이 프로젝트는 아두이노키트를 통해 미세먼지, 온도, 습도를 탐지해주는 장치를 만들고 앱인벤터를 통해 간단한 프로그램을 만들어서 현재상태를 표시해주는 앱을 만들었습니다.

프로젝트 내용:

  • 미세먼지, 온도, 습도 측정 장치 설계
  • 앱인벤터를 이용한 간단한 앱만들기 이해
  • 아두이노키트를 이용한 조립 및 구조 이해

기술 스택 및 사용 도구: Arduino 키트, 앱인벤터, Arduino IDE

결과 및 성과: 아두이노에 대한 전반적인 이해와, 앱인벤터를 통한 앱만드는방법 이해

Arduino Project

운영체제 스케줄러

2024년 1학기 운영체제에서 실시했던 이 프로젝트는 운영체제의 작동구조와 Round Robin 스케줄러, 우선순위 스케줄러, 스케줄러 클래스, 스케줄러의 시간복잡도를 구현하는걸 목표로 한다.

프로젝트 내용:

  • Round Robin 스케줄러 : 프로세스가 바뀔 때마다 현재시간, 지금 실행시킨 프로세스, 런 큐를 출력한다.
  • 우선순위 스케줄러 : Round Robin 스케줄러를 바탕으로 각 프로세스의 남으 시간 비율이 높을수록 높은 우선순위를 가지고, 레디큐에 있는 프로세스들의 진행률을 출력해준다.
  • 스케줄러 클래스 : 마찬가지로 Round Robin 스케줄러를 바탕으로 class1은 전체 프로세스 중, 작업 시간이 상위 30% 이내인 프로세스 class2는 나머지 프로세스를 출력해준다.
  • 스케줄러 시간복잡도 : 현재 시간복잡도는 빅오(O)인데 O(logN)이나 O(1)로 변경

기술 스택 및 사용 도구: C 언어, Visual Studio, GCC 컴파일러

결과 및 성과: 이해하기 어려웠던 Round Robin을 실제로 C언어로 구현해보면서 완벽히 이해

Operating System Scheduler

한남대학교 이수체계도 만들기

2024년 1학기 오픈소스 수업에서 진행한 오픈소스 개발 프로젝트로 여러 명의 학생들이 함께 참여하여 개발과 오류 수정을 통해 한남대학교의 이수체계도를 만드는 것을 목표로 하였습니다.

프로젝트 내용:

  • 학생들이 자신의 수업 이수 현황을 시각적으로 관리할 수 있는 그래프 기능 구현
  • 강의 정보, 이수 요건 등의 데이터를 동적으로 관리하고 시각화하는 기능 개발
  • 다양한 오류 수정 및 개선을 위한 팀 작업

기술 스택 및 사용 도구: JavaScript (ES6+), GitHub을 통한 협업 및 버전 관리, 오픈소스 개발 방법론 및 이해

개인 기여 및 역할: 초기 데이터 모델링 및 구조 설계, 그래프 시각화 기능 구현, 버그 수정 및 코드 리뷰 참여

결과 및 성과: 실제 팀 프로젝트에서의 협업 능력 향상, 오픈소스 커뮤니티에서의 활동 경험, JavaScript 및 GitHub을 이용한 소프트웨어 개발 역량 향상

Hannam University Curriculum