개발자가 목표였던 나는 최근에 다른 직종에 종사하며 꿈이 바뀌게 된다. 지금 다니는 회사에 웹 개발자로 들어갔지만, 현재는 Sales Engineer을 하고 있다. 스타트업의 특성상 웹 개발 말고 다른 일을 하게 될 거라는 건 예상했지만, 어느 날, 나에게 문서 작업이 주어졌다. 정확히 말하자면, 글 쓰는걸 좋아하고, 내 생각을 말로 표현하는 걸 좋아하기에 내가 문서 작업을 하겠다고 자원했다. 그렇게 보고서, 영업 자료, 시장 조사 등등 다양한 문서를 만들었다. 문서 작업은 즐겁고 재밌었다. 개발에 흥미를 잃어갈 때쯤 새로운 일을 해서 그런가? 그러다 회사가 성장하면서 외부 미팅 횟수가 늘어나며 불안감을 느꼈다. 회사의 성장에 불안감이 아니라, 미팅에서 말을 제대로 하지 못하는 나를 보며 그런 느낌을 받..
인과 학습을 이야기하기 전에 인과관계는 무엇인지 간단히 생각해보자. 인과관계 어떠한 일어난 일 A가 원인 B에 의하여 발생한다고 해보자. 예를 들어, 달의 인력 B에 의하여 조수 간만의 차 A가 발생할 수 있다. 이때, 조수 간만의 차 A와 달의 인력 B는 상관관계(correlation)에 있다고 할 수 있다. 하지만, 달의 인력 B가 조수 간만의 차 A가 발생하도록 하는 모든 원인은 아니다. 지형이나 달의 위치 등도 조수 간만의 차 A의 원인이 될 수 있다. 이러한 알려진(명시된) 원인 B 외에 관측된 A가 일어나도록 하는 나머지 원인을 설명 C이라고 할 수 있다. 원인에 대한 설명 C는 명시된 어떠한 원인 B로부터 발생되는 일 A를 설명한다. 이러한 설명 C는 일의 발생에 잠재된 원인 또는 인과 설명..
졸업 프로젝트가 끝나고 한 학기를 마무리 하기까지 약 두 달이 남았었다. 이 시간을 무료하게 보낼 수 없어 링크드인에 이력인듯 이력 아닌 나의 정보를 기재하고 인텔코리아와 SAP코리아의 인턴십 공고에 지원하였다. SAP 코리아 SAP 코리아의 학생 인턴은 두가지 프로그램이 있는데 STAR과 Diploma Student / Intern_Software Engineer이다. STAR은 Student Training and Rotation의 약어로 한 부서에서만 업무를 보는 게 아닌 여러 부서의 업무를 경험해볼 수 있는 학생 인턴이다. Software Engineer Internship도 학생 인턴이지만, SAP Labs에서 업무를 보게 된다. 둘 다 좋은 취지의 프로그램이지만, 나는 STAR을 신청하였다가 ..
[문제] 코딩테스트 연습 - [3차] 파일명 정렬 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램 programmers.co.kr 1. 저장소 서버에는 프로그램의 과거 버전을 모두 담고 있어, 이름 순으로 정렬된 파일 목록은 보기가 불편했다. 또한, 버전 번호 외에도 숫자가 포함된 파일 목록은 여러 면에서 관리하기 불편했다. 2. 무지는 단순한 문자 코드 순이 아닌, 파일명에 포함된 숫자를 반영한 정렬 기능을 저장소 관리 프로그램에 구현하기로 했다. 3. 파일명은 크게 HEAD, NUMBER, TAIL의 세 부분으로 구성된다. 4. 무지를 도와 파일명 정렬 프로그램을 구..
[문제] 1063번: 킹 8*8크기의 체스판에 왕이 하나 있다. 킹의 현재 위치가 주어진다. 체스판에서 말의 위치는 다음과 같이 주어진다. 알파벳 하나와 숫자 하나로 이루어져 있는데, 알파벳은 열을 상징하고, 숫자는 www.acmicpc.net [코드 풀이] let [positions, ...commands] = require("fs") .readFileSync(process.platform === "linux" ? "/dev/stdin" : "input.txt") .toString() .trim() .split("\n"); // A-H열을 숫자로 라벨링 const pos = { A: 1, B: 2, C: 3, D: 4, E: 5, F: 6, G: 7, H: 8, }; // 방향 정의 const move..
- Material UI란? 리액트에서 바로 사용할 수 있는 기능과 디자인을 컴포넌트로 제공해주는 UI 프레임워크이다. 가이드라인을 따라 사용할 수도 있고, 사용자가 커스터마이징도 가능하다. - 깃허브 GitHub - mui/material-ui: MUI Core (formerly Material-UI) is the React UI library you always wanted. Follow your own design syst MUI Core (formerly Material-UI) is the React UI library you always wanted. Follow your own design system, or start with Material Design. - GitHub - mui/mate..
[문제] 17609번: 회문 각 문자열이 회문인지, 유사 회문인지, 둘 모두 해당되지 않는지를 판단하여 회문이면 0, 유사 회문이면 1, 둘 모두 아니면 2를 순서대로 한 줄에 하나씩 출력한다. www.acmicpc.net [메모리 초과 뜬 코드] const [_, ...words] = require("fs") .readFileSync(process.platform === "linux" ? "/dev/stdin" : "input.txt") .toString() .trim() .split("\n"); const result = []; for (const word of words) { if (word === word.split("").reverse().join("")) result.push(0); // 회문..
[문제] 3568번: iSharp 입력으로 주어진 변수 선언문을 문제의 조건에 맞게 변형한 뒤, 한 줄에 하나씩 출력한다. 변수형과 변수명 사이에는 공백이 하나 있어야 한다. 출력은 입력으로 주어진 변수 선언문에서 변수가 www.acmicpc.net [코드 & 풀이] // common은 기본 변수형, input은 변수 선언들 let [common, ...input] = require("fs") .readFileSync(process.platform === "linux" ? "/dev/stdin" : "input.txt") .toString() .trim() .split(" "); input = input.map((v) => v.replace(",", "")); // 쉼표를 없애줌 input[input.l..
- 졸업 프로젝트 경진 대회 재학 중인 대학교에는 캡스톤 디자인이라는 과목이 있다. 팀을 이루어 1년 동안프로젝트를 만들고, 마지막에는 경진대회를 열어 팀별 오픈부스에 아이템을 전시하고 홍보하는 활동을 한다. 경진대회는 1년간 제작했던 내 아이템이 세상에 공개되는 날이라 이 과목의 과정에서 가장 중요하다고 말할 수 있다..! 총 29팀이 참가했으며 대회의실을 빌려 회의실 안부터 복도까지 부스가 있다. 상을 결정하기 위한 점수는 교수님 10분께서 평가하시고, 각 팀별로 어필?을 해야 한다 또한, 아이템에 관심을 가져서 직접 질문하시는 학생분들도 많이 계셨고, 다들 좋은 피드백을 해주셔서 기분이 좋았다 ^__^ (하지만 하루 종일 말하느라 목이 아팠다.) 보통 4인 1팀으로 이루어 진행하는데, 우리 팀은 2..