Frudy
7k
2019-07-01 22:20:10 작성 2019-07-01 22:25:33 수정됨
20
10490

신입 웹개발자 취직 후기


공고 : http://www.saramin.co.kr/zf_user/jobs/relay/view?isMypage=yes&rec_idx=36441443&recommend_ids=eJxNjrkRAzEMA6txzp9C7EKu%2Fy4sz0kkR9FqBwA1DASnx7E%2B%2BdWBj70f6WBtX3i92OKRLzxeN4LLN1Z%2F5uLRf%2FF6d7fRX3j9UrEYeRVfPYcMbBv84t4HCk2Vc2RF1bwtBbN0NpdbtuVAYgwF75uC5DR7SDbSftKYgPCTFidrBP3jD%2FQXV8Q%3D&view_type=apply_status&gz=1&t_ref_content=generic&t_ref=apply_status_list#seq=0


나이 : 25살

자격증 : X

학교 : 대구에 있는 전문대 2년제 전자공학


연봉 : 2,500

중식 : 무료제공(구내식당)

조식, 석식 : 일찍, 늦게 퇴근하면 무료로 준대요. (08:30, 20:00)

22시넘어가면 야근교통비도 준대요.

통신비, 헬스비...학원비...총합 15마넌 한도로 매월 지원해준대요.

+ 내일채움공제!


--> 그렇게 나쁘진않은거같아요.


뽑힌이유(추측) : 고민하며 프로그래밍한다는게 느껴져서.


학원에서 찍어내는것마냥 어 작동된다아아 하고 마는 학생들 너무많았는대,

자소서 딱 보고 얘는 1년간 뭘 고민했고 뭘 해결했다는게 보여서 면접장에 불렀다고 했어요.



목차)

1. 면접준비

(1) 자소서, 포폴 복습

(2) 예상질문 준비


2. 면접내용

(1) 손코딩

swap(a, b) 작동과정 설명하기

소수판별하는 프로그램 구현하기

(2) 질문


3. 구직성공 후기


1. 면접준비

(1) 자소서, 포폴 복습

모든 질문은, 자소서, 포폴 기반으로 나오기 때문에 복습했어요.


(2) 예상질문 준비

딱 두개만 준비해갔습니다. 지원동기, 1분 자기소개요.

근대 사실 1분 자기소개는 필요가 없어보였어요.


ㅁㅁㅁㅁ에 맞춰서 자기소개를 좀 해주세요. 라고 하시기 때문에,

본인이 준비한 자유형식의 1분 자기소개 이런거 결국 도움안되더라구요.


이번 면접에는.. 이제까지 사용한 기술에 맞춰서...라고 자기소개를 부탁하더라구요.



2. 면접내용

(1) 손코딩 - swap()


기존 상황)

면접관님 : "Java가 Call by value인게 아니고요,

Java가 Call by value말고 다른것도 지원이 가능하다..." 였나, 잘 기억이안나네요.

아무튼 지원자님(저)말대로라면 Java에 어떻게 swap()가 있겠냐, 이런식으로 논쟁이 붙었어요.


그리고는... "swap(a, b)가 작동되는 과정을 화이트보드에 적어봐라" 하셨어요.

Java, call by value라는 키워드가 자소서에 있었으니까요.




그래서 그림으로 화이트보드에 그리고나서

a, b는 바뀔 수 없다고 생각합니다. 라고 했더니,


오..제대로네.. 이러시면서

그렇죠 reference값이 복사되서 넘어가기 때문에 그렇죠. 라고 했어요.


--> ??? Java는 Call by value만 지원하는거 아닌가요? 이건 저도 의문.

--> Java swap() 찾아보니 없대요. 없대요... C처럼 &연산자를 지원하는것도 아니니까요.

--> 그럼 면접관님은 절 낚으신건지.. 아니면 정말 java가 call by value만 지원하는게 아닌지... 모르겠습니다.



2. 면접내용

(1) 손코딩 - 소수판별프로그램 작성하기


기존상황)

면접관님이 1은 소수에요. + 근거근거.

저 : ???!!?!


그리고는 소수판별프로그램 작성하라고 하셨어요.

조건 : 메소드시그니처 자유, 그냥 판단만 하면되니 콘솔에 찍어도 무방. 1~100이 저장된 배열에서 소수 판별하기.



	public static void main(String[] args) 
	{
		int[] nums = new int[100];
		
		for(int i = 1 ; i <= 100 ; i++)
			nums[i - 1] = i;
		
		for(int num: nums)
		{
			if(num == 2)
				System.out.println(num);
			
			else if(num %2 == 0)
				continue;
			
			else
			{
				int count = 0;
				
				for(int i = 1 ; i <= num ; i += 2)
				{
					if(num %i == 0)
						count++;
				}
				
				if(count == 2)
					System.out.println(num);
			}
		}
	}



저렇게까지만 작성해놓고, 혹시 뭐하나만 인터넷에 찾아봐도 되겠냐고 물어보니

엄청 웃으셨습니다. 어이없다? 황당하다? 라고 느끼셨을거에요... 면접질문 도중에 찾아본다니까..


아무리 생각해도 1은 소수가 아닌거같아서 찾아보겠다고 하니  해보라고 하셨고,

실제로 1은 소수가 아니였습니다. 증거 보여드리고 엄청웃으시더니 납득하셨습니다.


(이건 아마 낚으신게아니라 정말 햇갈리신거같습니다.)


아무튼 해설하라고 하셔서,

1. 짝수일때는 무조건 거르고, (2제외)

2. 약수 갯수 구할때는 일부러 i++ 대신 i += 2로 했다는 것을 강조했더니


저를 엄청 좋게봐주셨습니다.



2. 면접내용

(2) 질문 : 싱글톤에 대해 1년간 고민했다고 하니 싱글톤 한번 구현해보세요



public class Singleton 
{
	//방법1
	private static Singleton instance = new Singleton();
	private Singleton() {}
	public static Singleton getInstance()
	{
		return instance;
	}
	
	//방법2
	private static Singleton instance = null;
	private Singleton() {}
	public static Singleton getInstance()
	{
		if(instance == null)
			instance = new Singleton();
		
		return instance;
	}
}


(방법1)

1. 컴파일단계에서 미리 객체를 하나 생성하고,

2. 생성자를 private으로 하여 외부에서 생성자호출을 못하게 막으면

>> 싱글톤의 인스턴스는 오직 하나만 존재하는것을 구현할수 있다고 설명드렸고,


(방법2)

저렇게 하면 두개이상의 객체가 생성될 위험이 있어서,

위와같이 구현했다고 답변드렸습니다.


하지만, 저 코드의 단점은 singleton객체를 사용하기도전에

이미 생성되버리기 때문에...


호출하면 그재서야 생성되도록 하는게 더 낫다고 하셨고,

thread-safe하면서도 immutable함을 만족할 수 있는 패턴을 요구하셨습니다만...

저 역시 본적은 있지만 몰라서 지적받았습니다.


https://jeong-pro.tistory.com/86

아마 여기글의 제일 마지막 패턴을 요구하신거같습니다.


1년 고민했는데 이걸몰라? 하는 느낌이였어요.


그리고는 개발자는 안풀리는게있으면 며칠간 식음을 전폐하고 덤비는 근성...이었나,

아무튼 그런맥락으로 말씀하나 주셨으나

https://okky.kr/article/597304 저와는 생각이 조금 다르셔서, 저도 고민이 생겼습니다.


이후에 어쩌다 또 싱글톤관련 이야기가 나왔는대, 우연히 이를 만회할 기회가 왔었습니다.


사실 제가 1년넘게 고민한 singleton은 이거였습니다 + 주절주절 

private static과 함께 관련된거였어요. + 주절주절 했더니,


그래서 아...디자인 쪽으로 고민하신거였구나.. 라고 조금 만회가 되긴했습니다.



2. 면접내용

(2) 질문 : 직장내 아주 문제가 심한 팀원이 생기면 어떻게할래요?


답변)

일단 부서가 맡은 프로젝트를 완수하기위해 제가 좀 더 희생해서라도 완수한 다음에,

상사와 논의하겠다고 했습니다.


--> 흐음.. 어디 책에서 읽어본거 같은대...(의심)


--> 몇달전에 이런질문 받으면 어떻게 답변할까? 고민했었던 질문중 하나였습니다. 이렇게 하는게 옳다고 생각합니다.


기타)

이야.. 충북에서 매일 서울로 국비학원 출퇴근 이야.. 열심히하시네..

그랬어요.



3. 구직성공 후기

그냥 운이 너무 좋았어요. 


소수판별 프로그램은 1년전에 이미 한번 고민했던거였고,

C언어를 배웠기 때문에 Java코드가 메모리레벨에서 어떻게 도는지를 알고있었고..

프로그래밍 중에 생긴 고민들도 모두 이미 고민해봤던거고..

"직장내 문제심한 팀원" 이런 흔한 질문도 이미 고민해봤던거고...


면접관님이, 제가 best로 답변할 수 있는 질문만 골라서 던져주셨어요.

당시 면접분의기는 이야 이 지원자 제대로네 이런느낌...?


전 분명 과대평가받고있고, 이대로 다음주 월요일 첫출근했다간

수습3개월내에 짤릴지도 모르겠다 싶어요.


다행히 당장 취직하면 맡게되는 업무 물어보고 답변받았으니

철저하게 준비해서 첫출근날 완벽한 첫인상을 심어드리고싶어요.


일단 첫날에 셋팅부터 해야할지도 모르니..

컴퓨터 선 다뽑아보고 다 연결하고 리눅스 운영채제 깔아보고 해야겠네여.

저 개발자인데 데스크탑 선 연결하고 OS설치하는거 어색하거든요...(창피)


회사규칙 안내서도 받아보고..

이런거저런거 제출하라는 것도 받아보고...

어...어떻게해야하는지 잘 모르겠지만 제출할거 준비하고있습니다.

20
8
  • 댓글 20

  • 방가방가2
    1k
    2019-07-01 22:34:54

    의욕이 넘치는 신입이시군요! 좋은 회사에 좋은 분들이 모인 회사같습니다. 그 열정과 꿈을 잃지 않고 회사와 함께 앞으로 나아가실수 있기를 바랍니다. 

    -1
  • 삼이
    1k
    2019-07-01 23:19:54

    고생하셨습니다.

  • 천진우
    235
    2019-07-01 23:52:23

    열정 넘치시는 분이네요..


    파이팅 :)

  • 은하수
    2k
    2019-07-02 00:41:12

    더 좋은 대우 받으실 수도 있는 분입니다

    자신감 가지시길

  • withdrawal
    2019-07-02 00:42:47

     i += 2 앞에 i <= num / 2로 하면 어떨까요? 왜 그런지는 생각해보시기 바랍니다.

    -4
  • Hardspoon
    83
    2019-07-02 01:26:33
    충북쪽에서 서울로 국비 매일같이 다니신걸로 근성 제대로 어필하신 것 같네요ㅎㅎ축하드립니다!
  • Frudy
    7k
    2019-07-02 06:33:32

    ccc

    아~ 그런방법도 있겠네요.

    감사합니다.

  • LichKing
    16k
    2019-07-02 07:29:40

    축하드립니다 면접보면서 아니다싶은것들은 저렇게 할말 하면서 정정하는것도 중요하다고 생각합니다 ㅎㅎ

  • Frudy
    7k
    2019-07-02 07:45:37 작성 2019-07-02 07:47:17 수정됨

    LichKing

    그게...좀 걱정되긴해요.

    개발팀(8)에서 제일높은 1등, 2등의 고수님이 오신거같은대...


    1은 소수아니에여 이렇게 대든게 조금...당돌하다고해야할지...

    음...걱정이 되네요.


    물론 저는 1은 소수가 아니라고 생각해요.

    아닌거같아요. 이런식으로만 말을 했지만..


    걱정되는건 어쩔수가없네요....;


    운이좋아서 잘풀렸지 진짜 1이 소수였으면....어으끔찍


    Call by value냐 아니냐에 대해서도...

    저는 그냥 고수가 맞다그러면 아 그런가보네여 하고 말걸 그랬나 싶기도하고...


    운좋게 swap()을 구현해보라고 해서 잘됬지만

    하마터면 ...고수가 맞다는걸 신입이 아니라고 한 꼴이... 어으끔찍..

  • 재현아빠
    3k
    2019-07-02 08:17:42

    정성글에는 추천이죠..축하드립니다. 열심히 하시길..

  • Muzo
    105
    2019-07-02 09:10:48

    축하드립니다! 

  • gamza
    423
    2019-07-02 11:18:16
    멋집니다 ㅎㅎ
  • 랑겔한스
    1k
    2019-07-03 00:10:11

    이제 이 글에 댓글을 다실 수 있습니다 :)


  • lllllllllllllll
    8k
    2019-07-03 00:24:49

    https://okky.kr/article/597937

    이 게시물에 댓글이 안달리는 버그가 발생해서 제보했었는데 빠르게 해결해주셨네요 ㅎㅎ

  • Initializing
    722
    2019-07-03 12:31:36

    이대로 고민하며 성장하시다보면 나중에는 감독관 자리에 계시는 멋진 개발자가 되실 것 같습니다.

  • Frudy
    7k
    2019-07-03 12:51:15

    헉 칭찬 감사합니다~~

  • ambition
    2019-07-04 12:00:08

    축하드립니다만,

    첫 회사가 블록체인 회사군요...

  • ISA
    4k
    2019-07-04 18:21:48

    축하드려요 댓글막혔던거 풀렸는데 블록체인 업계 평균보다는 적지만 사내분위기나 배울점 많은 곳 같네요

  • 돈키호테
    6
    2019-07-05 08:43:37

    축하드립니다.

    우연이나 행운이 아니라.. 평소 준비 많이하셨던게 느껴집니다^^

  • 로그인을 하시면 댓글을 등록할 수 있습니다.