반응형

전형절차

서류 → 코딩테스트 → 인적성 → 면접 → 인턴 → 정규직 전환

 

코딩테스트

당시, 기억으로 신촌에 있는 YBM 어학원 건물 지하에서 진행되었던 것으로 진행된다. 코로나가 전파되었던 상황임에도 불구하고 오프라인으로 진행되었다. 시험 방식은 ybm에서 주관하는 COS Pro 2급 시험과 비슷하다. 흔하게 다른 기업에서 잡하는 프로그래머스와는 차이가 있다. 지금은 어떻게 바뀌었는지 모르겠지만, 신촌에서 진행된다면 같지 않을까?

 

인적성

인적성은 영등포구청역에 있는 본사 회의실 같은 장료에서 진행된다. 시험이 엄청 부족했고, 수리/언어 등등 영역별로 15분~20분 정도 시간을 분배하여 진행된다. 앞에서 진행자가 시간을 체크하고 있으며, 수리영역 1분 남았습니다 라는 등의 멘트를 안내해주신다. 당시 기억으로 오답에 감점이 있었던 걸로 기억한다.

 

면접

기술면접 보다는 이력서 기반한 면접 질문이었다. 시간이 오래되어 자세하게 기억하지 않지만, 프로젝트와 비즈플레이에 관련된 관심을 많이 질문 받았던것 같다.

 

인턴

합격을 하게 되어, 비즈플레이에 입사하게 되었다. 인턴기간은 급여가 상당히 작았던 것으로 기억하며, 인적성을 본 공간에서 대규모로 모여있다가 근로계약서를 작성하고 각자 배정된 부서로 흩어진다. 나는 인턴기간 중 다른 곳의 합격소식을 접하고 인턴을 포기하고 나왔다. 자소설닷컴을 보니 추가합격자가 있었던것 같다.

반응형
반응형

npm WARN config global `--global`, `--local` are deprecated. Use `--location=global

npm를 설치하다 보니 이런 에러를 만나게 되었다. 어떻게 해결해야 될까?

 

1. Window Powershell을 관리자 권한으로 켠다 
2. Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force 
3. npm install --global --production npm-windows-upgrade 
4. npm-windows-upgrade 
5. npm -v

하지만, 이렇게 했음에도 불과하고 해결이 안될 수 있다.
그럴때는 node.js 설치파일에 접근하여 npm.cmd 파일을 수정해줘야 한다.

 

(원본)
SET "NPM_CLI_JS=%~dp0\node_modules\npm\bin\npm-cli.js" FOR /F "delims=" %%F IN ('CALL "%NODE_EXE%" "%NPM_CLI_JS%" prefix -g') DO ( SET "NPM_PREFIX_NPM_CLI_JS=%%F\node_modules\npm\bin\npm-cli.js" )

(수정)
SET "NPM_CLI_JS=%~dp0\node_modules\npm\bin\npm-cli.js" FOR /F "delims=" %%F IN ('CALL "%NODE_EXE%" "%NPM_CLI_JS%" prefix --location=global') DO ( SET "NPM_PREFIX_NPM_CLI_JS=%%F\node_modules\npm\bin\npm-cli.js" )

끝.

반응형
반응형

예전에 면접보았던 (최근 주가가 많이 떨어지고 있는) 회사 더존비즈온에 대해 회고를 해보려고 한다. 학부생 시절부터 가고 싶던 회사였기에 누구보다 더존비즈온에 입사에 대한 열정이 뒤쳐지지 않았다고 생각한다. 결론부터 말하자면 최종합격을 하였지만, 다른 회사와 동시에 합격하여 엄청난 고민 끝에 다른 회사를 선택하게 되었다. 이때 더존비즈온을 선택했어야 하는데...

 

아무튼 그당시 채용 프로세스는 서류 → 인적성 → 1차면접(실무) → 2차면접(임원) → 건강검진 → 입사 순서였다.

 

# 인적성

채용공고에도 나와 있는것처럼 채용 합격 여부와 무관하게 참고 자료로 쓰인다고 한다. 하지만, 사람 심리라는게.. 못보던 불이익 받을 것 같아서 정말 열심히 풀었다. 온라인으로 진행되었고, 문제수가 제법 많았던 것으로 기억한다. 우리 흔히하는 인성과 적성 2가지로 분류해서 출제된다.

 

# 1차 면접(실무)

내가 지원한 빅데이터 플랫폼 직무와 같은 경우는 면접 이외의 다른 전형은 없었지만, 당시 오픈 카톡방 참여자 들 중에서는 대학교 쪽지시험과 유사한 필기를 진행했다고 한다. 그러고 비전공자라면 어느정도 준비하는 것도 나쁘지 않을것 같다. 면접 방식은 다음과 같다.

 

면접관 : 2명면접자 : 3명

 

다대다 로 진행되었으며, 어느덧 2년이 족히 지났기에 생각나는 면접 질문이 많이 없다. 지금까지도 기억에 남는건 으리으리한 서울의 본사와 내부 시설물 그리고 1시간이나 진행되었던 실무면접. 의자가 너무 하드해서, 면접이 끝나니 엉덩이에 아무런 감각이 없었다.

 

- 1분 자기소개

- 데이터 3법 설명하기

- 디지털 뉴딜 설명하기

- 본인이 진행한 프로젝트 설명하기

- 데이터베이스 정규화 설명하기

- 남들과의 차별성

- 비교적 많은 나이에 대한 이점과 강점

- 야근에 대한 생각

 

등등 .. 수많은 질문이 있었고, 전광과 관련된 질문이 대다수였다. 당시 면접관이 너무 젊으셔서 나도 나중에 나도 저자리에 앉아서 면접관이 될 상상을 잠시 하였다.

 

# 2차 면접(임원)

2차 면접은 임원 면접이라고 문자를 받게되었다. 더존비즈온에서 개발한 화상 플랫폼(비대면)으로 면접이 진행되었고, 송호철 이사님이 면접에 임해주셨다.

더존비즈온 송호철 이사

기존의 임원면접은 인성위주의 질문이었는데, 이 분께서는 실무에 관련되어서도 많은 질문을 한 기억이 있고 빅데이터에 관련해서 많은 지식이 있으셨던것 같았다. 나는 졸업작품으로 노인심혈관 질환은 예측하는 기계학습을 구축한 경험을 내세웠는데 그게 관련된 많은 질문들을 하셨다. 버스 승차해서 프로젝트 하셨던 분이시라면 코드를 구체적으로 보고 가는걸 추천한다.

 

- 1분 자기소개

- 데이터 결측치 해결 방안

- 데이터 이상값 찾기 방안

- 불가피한 야근 및 업무시간 조율 방법

 

이 외에도 많은 질문들이 있었지만, 위에서도 말했듯이 2년이 지났기에 많은 것들이 생각나지 않는다.

 

최종적으로 합격했다는 메일과 서류를 제출하라는 연락을 받았지만, 당시 공공기관과 동시에 합격하여 아쉽게 포기하게 되었다. 그때 더존비즈온에 갔으면 나는 빅데이터 엔지니어가 되었을까? 라는 생각을 지금도 하고는 한다.

 

반응형
반응형

DB를 설치하기 전 (사실 설치를 했지만, 에러나서 실패한건 비밀) 용도별 파일시스템을 만들기로 했다. 파일시스템을 구축해야 하는 이유는 용도별 용량을 설정해주기 위해서다. 이게 무슨말일까? 파일 시스템을 별도로 사용하지 않고, 한 폴더를 여러 곳에서 사용한다면 어느 곳에서 많이 쓰고 있는지 어디가 과하게 잡혀 있는지 모르게 될 것인다. (진짜?)

사실 회사에서 본 폴더 구조인데 왜 이렇게 복잡하게 설정하고 쓰고 있나 몰랐는데, 막상 구축하려니까 그들의 고뇌가 느껴졌다. 스고이.

일단 내가 구성할 파일시스템 구성은 /sw /log /arc /work 이다. 각각 파일시스템의 용도는 이렇다.

/sw : 데이터베이스 관련 엔진들이 설치될 공간
/log : 데이터베이스 각종 log 파일이 떨어질 공간
/arc : 오라클 아카이브 파일이 떨어지게될 공간
/work : 공유메모리로 여러 쉘 스크립트 작성들 여러 노드들과 공유하게될 폴더 (이건 그룹 볼륨을 해야될것 같은데 어려울것 같음)

이 글을 쓰기전까기 많은 노력들이 있었다. 파티션을 잘못 지워서 OS 를 다시 설치하기도 하였다. 그 덕분에 잘되던 alien 패키지도 동작을 하지 않는다.. so many 숙제 발생..

일단, log 파일을 15G로 설정할 예정이다. log 주제에 너무 많긴 하지만 파티션을 쪼개기 귀찮은건 안 비밀이다. 나중에 사용량을 봐서 줄여야겠다.

#1 파티션 확인하기
fdisk -l

root@DevOps:~# fdisk -l
Disk /dev/sda: 465.78 GiB, 500107862016 bytes, 976773168 sectors
Disk model: Samsung SSD 860 
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x12dd99c9

Device     Boot   Start       End   Sectors   Size Id Type
/dev/sda1  *       2048   1050623   1048576   512M 83 Linux
/dev/sda2       1052670 976771071 975718402 465.3G  5 Extended
/dev/sda5       1052672 976771071 975718400 465.3G 83 Linux


Disk /dev/sdb: 14.94 GiB, 16013942784 bytes, 31277232 sectors
Disk model: SanDisk SSD i100
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x6443471b

Device     Boot   Start      End  Sectors  Size Id Type
/dev/sdb1          2048  1050623  1048576  512M 83 Linux
/dev/sdb2       1052670 31277055 30224386 14.4G  5 Extended
/dev/sdb5       1052672 31277055 30224384 14.4G 83 Linux


파일시스템을 확인할 수 있는 명령어이다. /dev/sda1 을 보면 '*' 이 찍힌 것을 확인할 수 있는데, 이건 OS 관련 부팅 시스템이 설치된 공간임을 뜻한다. 만약 저걸 지우고 싶다? 그러면 재부팅이 안되며, 여러분의 소중한 시간은 삭-제와 만성 스트레스는 보너스다.

솔직히 저걸로 보면 뭔가 어질어질하다. 남들하게는 그럴싸하게 보이는 효과가 있으나, 내 머리가 어질어질해지는 효과도 추가 데미지이다. 우리는 그들이 내 모니터를 쳐다 보지 않으면, lsblk 명령어로 아주 편하게 파악하자.

lsblk

root@DevOps:~# lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 465.8G  0 disk 
├─sda1   8:1    0   512M  0 part 
├─sda2   8:2    0     1K  0 part 
└─sda5   8:5    0 465.3G  0 part /
sdb      8:16   0  14.9G  0 disk 
├─sdb1   8:17   0   512M  0 part 
├─sdb2   8:18   0     1K  0 part 
└─sdb5   8:21   0  14.4G  0 part 
sr0     11:0    1  1024M  0 rom


결과를 확인해보면, sda와 sdb가 2개로 나온것을 볼 수 있는데 저건 실제로 PC에 장착되어 있는 디스크를 뜻한다. 나도 몰랐는데 이번에 확인해보니 나는 2개의 디스크가 노트북에 장착되어 있었다. (왜지?) 고로, sda 하드디스크 1개와 sdb 하드디스크 1개 그러면 합이 총 몇 개 일까요? 자, 그럼 이제 log 파일을 등록해보자.

lsblk를 통해 여러 파티션이 나누어져 있다는 사실이 학인되었다. 하지만, df -h 명령어를 확인해보면 전부 사용되지 않고 있다는 사실을 알 수 있다. 고로 놀고있는 놈이 있다는 사실을 알 수 있다. 회사의 부장님들이 우리가 노는 꼴을 못 보는 것처럼 우리도 이 놈들을 일하게 해야되는 의무가 있다.

root@DevOps:/mnt# df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            1.9G     0  1.9G   0% /dev
tmpfs           383M  1.7M  382M   1% /run
/dev/sda5       457G  9.6G  425G   3% / # <===== 마운트된 파티션
tmpfs           1.9G     0  1.9G   0% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           1.9G     0  1.9G   0% /sys/fs/cgroup
tmpfs           383M   20K  383M   1% /run/user/1000


/dev/sda5 파티션만 열일 하는 것이 확인 되었다. 오늘은 /dev/sdb5에게 /log 폴더를 떠 맡기기로 했다.

#2 파일시스템 마운트
mkfs -t ext4 /dev/sdb5

root@DevOps:~# mkfs -t ext4 /dev/sdb5
mke2fs 1.45.5 (07-Jan-2020)
/dev/sdb5 contains a ext4 file system
	created on Sat Apr 30 22:55:49 2022
Proceed anyway? (y,N)


확인된 디스크를 리눅스 OS가 쓸 수 있도록 포맷하는 과정이다. 나는 이미 포맷되어 있는데 또 할꺼냐고 물어봐서 'N'을 눌러주었지만, 'y'를 눌러주면 수많은 로그가 화면에 찍힐 것이다. 이때 강한 어필을 하고 싶다면, y를 누르고 기지개를 키면서 화장실을 가보자. 그럼 당신이 무언가를 열심히 하고 있다고 생각할 것이다.

이 후에 mount 시킬 폴더를 만들어 보자 mkdir /log 디렉토리를 만드는 명령어이다.

자 그럼 마운트를 해볼까?

root@DevOps:/# mount -t ext4 /dev/sdb5 /lot
mount: /lot: mount point does not exist.


what thu fxxx... 역시 한 번에 성공하지 않는 것은 국룰인가보다. 해결 방법을 찾아보니 /etc/mnt 하위에 log 폴더를 만들라는 것이었다. 하지만 난 그 방식이 맘에 들지 않아 ! 다른 방법으로 시도 해보기로 한다.

(나중에 확인해보니 오타가 있었음)

mount /dev/sdb5 /log

root@DevOps:/mnt# mount /dev/sdb5 /log


아무런 이벤트가 없다. 잘 되거야? 너? 너 뭐돼? 확인 해보자.

root@DevOps:/mnt# df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            1.9G     0  1.9G   0% /dev
tmpfs           383M  1.7M  382M   1% /run
/dev/sda5       457G  9.6G  425G   3% /
tmpfs           1.9G     0  1.9G   0% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           1.9G     0  1.9G   0% /sys/fs/cgroup
tmpfs           383M   20K  383M   1% /run/user/1000
/dev/sdb5        15G   37M   14G   1% /log <= 짜잔

드디어 됐다... 이 틀만의 삽집이 빛을 발휘하는 순간이다. 자 그럼 끝 ! 이 아니라 mount 한 파일시스템은 재부팅하면 자동으로 활성화 되지 않는다. 즉, 오늘 퇴근하면 내가 다시 부를때까지 출근하지 않는다는 것이다. 헬조선에서 그 꼴은 볼 수 없지. 내가 부르지 않아도 알아서 출근하도록 설정을 해주자.

cat /etc/fstab

root@DevOps:/etc# cat fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda5 during installation
UUID=5eae71cc-c1e4-4d92-a182-7b65fc2fd519 /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/sda1 during installation
UUID=F06D-FEA2  /boot/efi       vfat    umask=0077      0       1
/swapfile                                 none            swap    sw              0       0
/dev/sdb5 /log ext4 defaults 0 0 #2022-05-01 추가


cat /etc/fstab 명령어를 실행하면, /dev/sdb5가 빠진 구성이 확인될 것이다. 그럼 재부팅 된 후에도 잘 작동되는지 확인하면 정말로 끝이난다. 지금은 귀찮으니.. 다음에 확인해보도록 하자. 아래의 글이 작성된다면 한 번에 성공하지 못한 것이다.

재부팅 후 이야기
성-공

반응형

'OS > Linux' 카테고리의 다른 글

[Ubuntu] /dev/loop0 - 좌충우돌 DB서버 구축일기 -  (0) 2022.04.30
[Ubuntu] 우분투 df, du  (0) 2022.03.24
[Ubuntu] 우분투 호스트네임 변경  (5) 2022.03.12

+ Recent posts