스웨덴에 위치한 Automotive 회사에 Resume를 보냈더니, 매니저에게서 직접 메일이 왔었다.
결론은 우선 코딩인터뷰를 보자! 라는 것 이였다.
스웨덴에 가본적도 없고, 이쪽 업계도 잘 모르지만 이 회사가 매우 마음에 들었던 이유는
코딩 면접을 보기로 한 그 다음날, 다른 사람에게서 메일이 왔었는데,
너도 이제 우리 채용 풀에 들어온 사람이니 나를 초대하고 싶다는 이야기였고,
멀티페달, 스티어링 휠 드라이브를 사용하는 자동차 게임, 혹은
복고풍 컴퓨터 게임, 버블버블, 팩맨 그리고 새로 나온 VR을 가지고 게임을 할 예정이니
오후 2시(!!) 에 사무실에 와서 함께 하자는 내용 이였다.
정중하게(사실 나의 영어가 미숙하여 정중한지는 모르겠다...)
정말 가고싶지만, 나는 한국에 살고 있기 때문에 너무 멀어서 못 갈것 같다고 대답했다.
그 이후 코딩 테스트를 진행했는데,
시험치는 사이트는 https://softwareskills.se/ 이였고,
문제는 크게 2가지 였다.
1. C 언어 시험
- 45분간 30문제를 품
2. 문제 푸는 시험
- 주식을 사고 파는 문제
1번 문제가 완전 멘붕 이였는데, 뭔가 생각치도 못했던 문제였기 때문이다.
#define, enum, pointer가 복잡하게 섞여 있는 것 까지는 괜찮았는데 (C시험이라는 걸 보고는, 이쯤은 예상했다)
변수와 함수 사이사이에 Static이 섞이면서 점점 헷갈렸다.
너프하게 반쯤 맞고 반쯤 틀린것 같다.
static변수의 라이프주기, 생성위치, 초기화 값 등 이런건 쉬워서 보자마자 넘어갔었고
왠만한 다른 코드들의 결과 예측도 풀만 했었는데
int main(void)
{
int a = 1;
int b = 2;
printf("%d", a+++++b);
return 0;
}
이런 문제는 좀 곤란했다 ㅠㅠㅠㅠㅠ 이렇게 아예 생각도 안해본 것들이 나와서 좀 당황스러웠다.
여튼 이 문제에 대해서 내가 고른 답은 틀린것 같았다.
기억나는 다른 문제는 아래 껀데.. 은근히 헷갈렸다. 다행히 이건 맞춤.
int main(void)
{
enum {N=4};
int a[N] = {0,1,2,3};
int k=0;
for(int i=0;i<N;i++)
{
if(k<N & a[k]!=2) k++;
}
printf("%d", a[k]);
}
결론은 시원하게 망한것 같다. 하하하하하하하 북유럽의 다른 회사를 찾아봐야겠다.