안녕하세요  :) 음메하~ 양하입니다!!

 

오늘 제가 소개해드릴 프로그램은 바로 " ICT 학점연계 프로젝트 인턴십  " 입니다.

 

저는 2020학년도 상반기 글로벌 과정에 7기로  참여하게 되었습니다!!!  (야호!!!)

 

 

 

너무나 신납니당~~~~

 

 

 


오늘은 그래서

 

1. ICT학점연계 인턴십은 무엇인지?

2.  선발과정은 어떻게 되는지?

 

이 두 가지에 대해서 알려드리려고 합니다!!



1. "ICT학점연계 인턴십"은 무엇인가요??  ( 뚜둥 👀 )

저는 글로벌 과정에 참여하게 되어, 내용이 국내보다는 국외과정위주로 설명될 것 같습니다!

 

 

 

ICT 학점연계 프로젝트 인턴십 사업 개요 자료

 

 



1-1  프로그램 소개 

국내 외 기업에서 제안한 ICT분야 직무 중심의 프로젝트, 서비스 개발 등에 대학생이 참여하여 인턴십을 수행하고, 이를 학점으로 인정받도록하는 이론과 실무역량을 겸비한 문제해결형 창의인재양성 프로그램입니다.

문제해결형 창의인재양성 어쩌구저쩌구~

 

쉽게 말하면, ICT관련 직무를 보유하고 있는 회사에 인턴십활동을 나갈 수 있도록 지원해주는 프로그램입니다.

 

 

 

 

1-2  그래서 이 프로그램이 왜 좋은거죠??

크게 장점 3가지가 있습니다.

 

 

1번. 학점인정

 

 

 

학교에 따라 상이하지만, 인턴 경험도 하면서 학교 학점도 채울 수 있는 기회를 제공합니다.

 

제가 다니고있는 전남대학교에서는 5개월 기준 일반선택 12학점을 인정받을 수 있습니다!!,

타학교와 달리 전공과목으로 인정받을 수 없다는 점이 매우 아쉽네요!! 다음에 참여하실 분들을 위해 꼭! 학교에 건의 해봐야겠어요!!

 

 

 

 

2번. 금전적 지원

 

 

 

 

2019년 지원 내용

 

 

제가 참여하는 글로벌 인턴십 과정은 작년자료에 따르면


 

  • 인턴십 준비금 : 왕복항공료, 비자발급  수수료, 의료보험
  • 실습생 인턴십 지원비 : 월 150만원(세전)
  • 실습생 기업수당 : 월 $1,300 이상 -> 2020년 부터는 기업에서 최소 $1,700 의 수당을 제공합니다!!

사업단에서  2가지 항목 ( 인턴십 준비금 , 실습생 인턴십 지원비 ) + 기업에서 1가지 항목 ( 실습생  기업수당 ) 을 지원해줍니다.

 

개인적으로 인턴십을 준비하는 경우보다  부담이 훨씬 줄어들겠죠?

 

 

 

3번. 해외 인턴십 직무 경험

 

 

IT계열 학생들의 경우, 학교수업에서 혹은 동아리에서 프로젝트를 진행하는 경우가 많이 있을텐데요. 

 

이처럼 개인적으로 프로젝트를 기획해보고, 개발하는 경험에 도전하시는 분들이 많다고 생각됩니다.

 

요즘 취업시장의 트렌드는 직무경험 이라고 합니다. 특히, IT분야는 현장. 실무경험이 특히나 더 중요하다고 합니다!!

 

 

 

개인적으로 프로젝트를 하는 것에 한 단계 더하여

 

취업하기전 인턴십 활동을 하며, 기업에서 제시한 프로젝트에 학생들이 참여해볼 수 있는 것

 

ICT 학점연계 프로젝트 인턴십이 가진 가장 큰 장점이라고 생각합니다!!

 

우리가 어디가서 이런경험을 쉽게 해볼 수 있겠어요!!!!

 

 


2. 이렇게 좋은 프로그램!! 선발과정은 어떻게 되나요??? 🧐

 

 

 

전체 프로그램 프로세스

 

 

 

 

2-1 전체적인 과정

 

 

먼저, 사업공고가 나면, 연수기업과 참여 대학을 모집합니다. 

 

이 말은 학생 개개인이 프로그램에 신청하는 것이 아닌, 학교가 사업공고를 보고 참여대학 신청을 해야한다는 것을 의미합니다.(ㅠㅠ)

 

 

만약, 프로그램에 참여하고싶다면, 학교에 미리미리 요청하는 것도 방법일 것 같아요!!!!

 

제가 어떻게 선발이 되었는지는 밑에서 자세히 설명드릴게요!!

 

 

 

2-2 참가 지원 대상

 

 

참여 대학의 정보통신 관련 학과에 재학중인 전공자, 복수 전공자 또는 부전공자 모두 참여가능합니다!! 

 

( 저의 경우 전남대학교 IoT인공지능 융합전공을 주전공으로 공부하고 있어서 정보통신 관련 학과에 재학중인 학생이었습니다 :) )

 

 

 

단, 글로벌 과정의 경우 4년제 대학 기준 6학기 이상 이수한 학생이 해당됩니다!!

 

즉,  3학년을 마친 학생이겠죠 !!

 

그런데 또 저희 학교의 경우 졸업 전 마지막 학기는 교내에서 마쳐야한다는 학칙이 있어서 

 

4학년 1학기로 진급하는 학생만이 해당 대상이 되었습니다!!  잘 알아보고 신청시길~~!! ( 졸업 유보에 관련해서는 잘 모르겠습니다.

 

(국내 과정은 4학기 이상 이수자로 기준이 조금 다릅니다!!)

 

 

 

2-3 제가 경험한 선발 과정

 

 

 

 

상반기 프로그램 선발 일정

 

 

 

우와 써놓고 보니 정말 대장정을 거쳐 선발되었군요!!

 

이 프로그램은 학교를 거쳐서 선발되고, 학교당 3명씩만 추천할 수 있기 때문에 12월에는 교내 면접을 봤습니다.

 

제가 봤을 때 당시, 자소서(30) + 교과목이수(10) + 외국어자격증(20) + 면접(40) 의 비율로 선발을 진행했습니다.

 

면접비율이 상당히 높았네요!!!

 

 

 

1월에는 사업단에 영문자기소개서와 재학증명서, 성적증명서, 개인정보활용동의서등의 서류를 제출합니다. 

 

이 때, 참여 연수 업체들이 요구하는 기술스택을 보고 기업을 3곳 선정해서 서류를 제출합니다!!

 

그리고 이번 기수부터 모든 학생이 거쳐야하는 관문인 코딩테스트가 추가되었어요!! 

 

총 5문제가 출제되었고, 자신있는 언어로 보시면 됩니다!!

 

*코테에서 0점 맞은 학생은 지원대상에서 제외,

**그 이상이라면 코테는 능력을 확인하는 정도로 사용된다고 말씀해주심!!

 

 

 

그 후, 2월에는 서류심사후 면접이 진행됩니다. 기업 인사담당자 분 께서 제출한 서류를 보시고 면접대상자를 선발합니다.

 

면접은 skype로 실제 기업분들과 30분간 영어면접을 봅니다!!

 

간혹 한국어 면접으로 보는 경우도 있어요! 저는 반반이었습니다!!

 

그리고 최종결과를 기다립니다!!! 


 

 

제가 오늘 준비한 포스팅은 여기까지 입니다. 

 

오늘은 ICT학점연계 프로젝트 인턴십이 어떤 프로그램인지, 그리고 선발과정에 대해 알아보았는데요! 유익하셨나요??

 

다음 포스팅은 선발 이후 미국인턴을 준비하는 과정이 담긴 이야기를 해보도록하겠습니다 !!

 

안뇽 :)

 


다음글이 궁금하시다면 !!!


 

2020/03/12 - [ICT학점연계인턴십] - ICT 학점연계 프로젝트 인턴십 면접준비🍀

 

 

20200101 새해 첫 날 수요일 

 

깃 잿이라는 깃 헙 잔디 볼 수 있는 어플

그래도 새 해가 밝았는데, 깃 헙 잔디 심어봐야지 !!

기말고사 기간 전에 한참 열심히 하다가 빵꾸가 나버린 내 잔디밭 ㅋㅋ

 

프로젝트 기간까지 빠짐없이 심겠다는 다짐을 하며 -

 

오늘 3시에는 우리 만다라트팀 회의 했지롱 ~ 새 해부터 열일 ♥

 

 


20200103 혼돈의 카오스 금요일

 

오늘은 금요일 

 

일정 

1. 필라테스

2. 만다라트 스터디

3. 언어교육원 스피킹 인터뷰 ( 4단계! 다행쓰! )

 

좀 살아난 양하

 

몸이 너무 아팠는데, 꾸역꾸역 언교 인터뷰 보고 거의 쓰러져서 병원갔다.

결과는 독감( 코에 긴 면봉 넣으시는데 죽을 뻔 ㅜ^ㅜ)

나 완전 튼튼이 중에 튼튼인데 처음으로 입원도 해본다 ㅋㅋ

 

새 해 액땜 제대로 하는 구만

 

HAPPY NEW YEAR 

 

 

 

 

 


20200107 - 20200117 winter dev. 준비

 

2019년에 가장 잘 한 일 : 에코노베이션 들어온 것

 

에코노에서 개발할 수 있어서 행복해 ~ ღ 

트랙패드 왜 이렇게 더러운거람! 그 와중에 포스터 너무 예뿌다 ㅜㅜ

지난 한 달간은 진짜 밤샘의 연속이라고도 할수있즤...

건강 회복하고 퇴원하자마자. 동방살이 시작 !!

 

동방 이렇게 늦은 시간까지 사용할 수 있는 것도.

뚜렷한 목표를 가지고 나아갈 수 있는 것도.

 

힘들었지만 너무너무 좋았다. 이런 경험도 하고 살아야 인생이지!!! 열심히 인생사는 느낌 진짜진짜 좋았음!

 

만다라트 웹페이지
스마트 도어락

 

발표하는 양하링

1. 다이어리를 쓰기 시작했다.

- 나는 기억력이 매우매우 안좋기 때문에 젊은 날을 기록하고자하는 취지에서 시작!

- 나는 원래 일정을 아이폰 캘린더로 정리하는 습관을 가지고 있음. 이를 아날로그 버전으로 옮기는 작업이 매우 재밌다 (지금까지는..!)

- 사하의 조언을 듣고, [먼슬리 + free note] 형식의 다이어리를 구매했음.

- 서영이랑 다꾸 이야기하는 거 넘나 재밌고~~

 

프리노트 부분!

 

 

2020.02.07부터 공부 시작

책 : Node.js 교과서(조현영, 길벗출판사)

 

알아두어야할 자바스크립트 (ES2015+)

1) const, let

기존 문법에서는 변수선언시 var을 사용했으나, ES6 이후 부터는 constlet을 사용한다.

어떤 스코프를 취하는 지의 차이를 가지고 있다.

 

변수선언 : const let var

 

if(true) {
	var x = 3; 
}
console.log(x); // 3

if(true) { 
	const y = 3;
}
console.log(y); // Uncaught ReferenceError: y is not defined

블록스코프와 함수스코프의 차이를 보여주는 코드

 

2) 템플릿 문자열 3) 객체 리터럴 4) 화살표 함수 5) 비구조화 할당

=> 다음에 정리 하는 걸루ㅎ..ㅎ,,,


[비동기 프로그래밍에서 중요한 프로미스와 async/await]

 

6) 프로미스

: 자바스크립트와 노드에서는 주로 비동기 프로그래밍을 한다. 특히 이벤트 주도 방식 때문에 콜백함수를 자주 사용한다.

ES2015부터는 자바스크립트와 노드의 API들이 콜백 대신 프로미스(Promise)기반으로 재구성된다.

콜백지옥을 해결할 수 있다.

const condition = true;
const promise = new Promise((resolve, reject) => { //프로미스 생성, resolve,reject를 매개변수로 갖는 콜백 함수
	if(condition) {
    	resolve('성공')
    }
    else {
    	reject('실패');
    }
});

promise //promise변수에 then, catch 매서드 붙이기
    .then((message) => {
      console.log(message); //resolve한 경우 실행
    }
    .catch((error) => {
      console.error(error); //중간에 에러가 난 경우 실행
    });
	

프로미스 객체 생성

 

이전 then의 return 값을 다음 then의 매개변수로 넘겨서, 프로미스를 return한 경우 프로미스가 수행된 후 다음 then (resolve일 경우) 혹은 catch (reject일 경우)가 호출된다.

 

promise
	.then((message) => {
      return new Promise((resolve, reject) => { //★
        resolve(message);
      });
    });
    .then((message2) => {
      console.log(message2);
      return new Promise((resolve, reject) => {
        resolve(message2);
      });
    })
    .then((message3) => {
      console.log(message3);
    })
    .catch((error) => {
      console.log(error);
    });

프로미스를 return 하여 다음 then으로 가는 코드

 

처음 then에서 message를 resolve하면 다음 then에서 받고, 다시 message2를 resolve하면 다음 then에서 message3를 받았다.

 


7) async/await

: 노드 7.6 , 자바스크립트 ES2017부터 지원되는 최신 기능, 비동기 프로그래밍에 용이하다.

프로미스를 사용한 코드를 한 번 더 깔끔하게 줄여줄 수 있다.

function findAndSaveUser(Users) {
  Users.findOne({})
    .then((user) => {
      user.name = 'zero';
      return user.save();
    })
    .then((user) => {
      return Users.findOne({ gender : 'm'});
    })
    .then((user) => {
      // 생략
    })
    .catch(err => {
      console.log(err);
    });
}

기존 프로미스 코드

 

async function findAndSaveUser(Users) {
  try{
    let user = await Users.findOne({}); // 이코드에서 프로미스가 resolve 되어야 다음으로 넘어감
    user.name = 'zero';
    user = await user.save();
    user = await users.findOne({ gender : 'm'});
  	//생략
  } catch(error) {
   console.error(error);
  }
}'

async / await 을 사용했을 때

 

async : 어떤 함수를 프로미스를 리턴하는 함수로 만들어줌

await : 프라미스가 resolve될 때까지 그 다음으로 안넘어감 ( 프라미스가 아닌 일반 함수에서도 작동하는데 그 때는 그냥 리턴값만 넘겨줌 )

const findAndSaveUser = async (Users) {
  try{
    let user = await Users.findOne({}); // 이코드에서 프로미스가 resolve 되어야 다음으로 넘어감
    user.name = 'zero';
    user = await user.save();
    user = await users.findOne({ gender : 'm'});
  	//생략
  } catch(error) {
   console.error(error);
  }
};

위에와 같은 코드 화살표함수 version

 

+) 추가 : 프로미스와 async/await 의 이해를 도울 수 있는 코드 (유투브 코드종님)

https://www.youtube.com/watch?v=CA5EDD4Hjz4

promise 개념을 너무나도 잘 설명해주신 코드종님 영상

Promise 와 Async/await 을 너무나 잘 설명해주셔서 다음에 수정하면서 코드까지 포스팅 할거에용!

가상환경을 쓰는 이유

: 파이썬 버전에 따라서 깔 수 있는 라이브러리 버전이 다를 수 있기 때문

 

python --version

conda --version

conda info --envs

conda create -n DNNworld(가상환경이름) python=3.5(내가 사용하려는 파이썬 버전)

conda info --envs 다시 쳐서 확인해보기

 

→ 분리를 시켜서 쓰고싶은 버젼에 따라 설치해서 사용

 

activate DNNworld //DNNworld라는 가상환경을 활성화 (base) → (DNNworld)

deactivate DNNworld //DNNworld라는 가상환경을 비활성화

 

그 가상환경을 활성화해서 필요한 것 설치

 

pip install numpy

pip install scipy

pip freeze // 설치한 것들을 확인하고자 할 때

pip install tensorflow

cf) pip3 → python 3버전에 맞춰서 사용 가능

pip install tensorflow==1.14 //버전에 맞춰서 설치 가능 → 이전버전은 삭제할건지 물어봄

import tensorflow as tf

 

가상환경을 지우고 싶을 때

 

conda remove --name DNNworld --all

conda info --envs

통합개발환경인 pycharm 설치

file → setting → project interpreter 에서 사용하고자하는 numpy 가 설치된 환경으로 변경해줌

 

jupyter notebook 실행 및 사용하기

 

설치한 가상환경을 activate 한 후

쥬피터 노트북 설치

pip install jupyter notebook

쥬피터 노트북 실행

 

jupyter notebook

 

Jupiter notebook에서 markdown으로 바꾼 후

#hello python

##hello python

###hello python

####hello python

** 볼드체 **

*이태릭체 *

수식처럼 나타내고 싶을 때 → $y = 3x$

코드 형식처럼 보이고 싶을 때 → python 텍스트

링크를 띄우고 싶을 때 → 텍스트

일주일동안 날 힘들게했던!!
알고보면 일주일이나 걸릴 일이 아니었는데...

1. 오류화면

: 리액트의 설치 중 패키지로 한 번에 설치해줘서 유용한 create-react-app 을 사용하여 설치함.

순서1) sudo yarn install create react-app (이름)
순서2) cd (이름)
순서3) yarn start [자꾸 이 부분이 실행이 안되고, 밑에와 같은 오류가 발생했었음

-밑에서 하란대로 package-lock.js 도 삭제해보고, npm으로 실행하던거 yarn으로도 해보고, webpack-dev-server도 버전에 맞게 다시 설치해보고 했는데 실행이 안됨

-문제를 무시하기위해서 SKIP_PREFLIGHT_CHECK=true 코드를 .env파일 내에 넣어보는 방법도 시도 해결되지 않음 → 이게 문제 해결의 key였는데 나는 이 파일(.env)을 src 디렉토리 내에 만들었었는데,

CRA(create-react-app)
ㄴsrc
ㄴ.env
ㄴpackage.json

이 구조가 되게끔 해야하는 것이었음!!

CRA 설치중 오류 화면
.env 파일을 추가한 디렉토리 구조

2. 설치환경 다 만들고 yarn start를 했을 때 정상적인 화면이 뜨는 모습!!!

성공!!!! ٩( ᐛ )و



* 사실 뭐 오류를 해결했다기보다는 무시한거지만, 해결하려는 과정을 여러 번 시도했고 일단 뭐 잘 실행되니까! 오예@!

  • nodes 에서 listen EADDRINUSE: address already in use :::3000 오류

Error: listen EADDRINUSE: address already in use :::3000

at Server.setupListenHandle [as _listen2] (net.js:1300:14)

at listenInCluster (net.js:1348:12)

at Server.listen (net.js:1436:7)

at Object.<anonymous> (/Users/yangha/Documents/nodejs/main.js:80:5)

at Module._compile (internal/modules/cjs/loader.js:956:30)

at Object.Module._extensions..js (internal/modules/cjs/loader.js:973:10)

at Module.load (internal/modules/cjs/loader.js:812:32)

at Function.Module._load (internal/modules/cjs/loader.js:724:14)

at Function.Module.runMain (internal/modules/cjs/loader.js:1025:10)

at internal/main/run_main_module.js:17:11

Emitted 'error' event on Server instance at:

at emitErrorNT (net.js:1327:8)

at processTicksAndRejections (internal/process/task_queues.js:80:21) {

code: 'EADDRINUSE',

errno: 'EADDRINUSE',

syscall: 'listen',

address: '::',

port: 3000

}

app.listen(3001);약간 어이없는데, port 번호를 3001로 바꾸니까 됨,,,,ㅎㅅㅎ

 

자꾸 내가 쓰던 포트를 안닫고 그냥 꺼버려서 비정상적인 종료가 안된듯 ㅜ^ㅜ

  • git reset --hard HEAD^1 커밋했던걸 한 단계 전으로 돌아간다는 명령어

: 잘못 사용해서 전단계로 돌아가버리는 바람에 로컬에 있는 파일들도 이전 버전으로 수정되어버리고, 파일이 사라지는 문제가 발생함

 

19/11/04 환경설정 마침

19/11/05 섹션2부터 본격적으로 강의듣기 시작 (~ 파일을 이용해 본문 구현 까지 수강 34%)

19/11/07 섹션2 - 홈페이지 구현 41%

19/11/08 섹션2 마무리 55% (깃허브 잘못만져서 한 번 사라짐 ㅜㅜ git reset --hard HEAD^1 명령어 조심해서 사용할 것)

 

⇒ 해결방법

$ git reflog 를 치면

17e6eeb (HEAD -> master, origin/master) HEAD@{0}: reset: moving to HEAD

17e6eeb (HEAD -> master, origin/master) HEAD@{1}: reset: moving to HEAD^0

17e6eeb (HEAD -> master, origin/master) HEAD@{2}: reset: moving to HEAD^1

330a070 HEAD@{3}: commit: 19/11/08 세션2 완료

17e6eeb (HEAD -> master, origin/master) HEAD@{4}: reset: moving to HEAD^1

73875eb HEAD@{5}: commit: 오늘은 섹션2 마무리

17e6eeb (HEAD -> master, origin/master) HEAD@{6}: commit: 2019/11/07 배열과 반복문

b6f3d1f HEAD@{7}: commit: 19/11/05 section2 파일을 이용해 본문구현 까지 수강

2ea9877 HEAD@{8}: commit: 19/11/05 add readme.txt

7764166 HEAD@{9}: commit (initial): 19/11/05

 

 

이런식으로 나의 로그들이 뜨는데, 돌아가고싶은 로그의 HEAD@{ 번호 }를 찾아서

$ git reset --hard HEAD@{5} 명령어를 입력해주고

push하면 문제 해결!!!! 야호!

 

참고 출처 : https://stackoverflow.com/questions/2936652/git-push-wont-do-anything-everything-up-to-date

++) 추가 : push 전 commit메세지만 수정하고 싶다면 amend 사용하면 됨

+ Recent posts