Successfully reported this slideshow.
Your SlideShare is downloading. ×

2020년 10월 10일 개발자 이야기

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 13 Ad

More Related Content

Slideshows for you (20)

Similar to 2020년 10월 10일 개발자 이야기 (20)

Advertisement

More from Jay Park (20)

Recently uploaded (20)

Advertisement

2020년 10월 10일 개발자 이야기

  1. 1. CTO 둘이 풀어드리는 주간 뉴스 2020.10.10 방송 구글 등 주요 회사의 [코딩 인터뷰] 살펴보기
  2. 2. 참고자료 • <컴퓨터 vs 책> 블로그 http://jhrogue.blogspot.com/ • 오늘자 방송 https://www.youtube.com/watch?v=BGqRSz3lzp4&list=PLdntWJk2tJPKvRB0mSqC5tyKU v7HFtcqg&index=1 • 유튜브 채널 OKdevTV > 재미있는 개발 이야기 리스트 https://www.youtube.com/playlist?list=PLdntWJk2tJPKvRB0mSqC5tyKUv7HFtcqg • 슬라이드 셰어 https://www.slideshare.net/jrogue/presentations • 채널 박재호(초급 개발자를 위한...) OKdevTV
  3. 3. 프로그래머 사기 via @MIT_CSAIL 오늘의 짤방 OKdevTV
  4. 4. ① 돈을 제대로 썼을까? - 엔지니어를 위한 짧은 (그러나 교훈적인) 이야기 ② 구글 등 주요 회사의 [코딩 인터뷰] 모음 ③ git 연습 ④ NestedText: JSON과 YAML은 가라! ⑤ egghead – 프론트엔드 개발자를 위한 동영상 모음 ⑥ 셸 히스토리를 중앙 저장소에 모아보자 ⑦ 깃허브 – 코드 스캐닝 서비스 시작 ⑧ 요즘 컴파일러의 최적화 수준 오늘의 소개할 내용 OKdevTV
  5. 5. ➢https://userweb.cs.txstate.edu/~br02/cs1428/ShortStoryForEngineers.htm ➢ 상황 ➢ 치약 공장에 발생한 문제: 양산 라인을 설정한 방식에 문제가 있었는지, 종종 내부에 치약 튜브없이 빈 상자가 배송되었다. ➢ 환경에 작은 변화만 있기에 고객 불만을 없애기 위한 QA를 진행하려면 균등하게 테스트 샘플을 잘 분포시켜야 했다. ➢ 해결 ➢ 엔지니어링 부서가 이미 눈코 뜰 새 없이 바빴기에 빈 상자 문제를 해결하기 위해 외부 전문가를 초빙했다 ➢ 예산과 프로젝트 스폰서를 할당하고, RFC를 만들고, 계약자를 고르고, 8백만불을 들여 6개월 후에 환상적인 해법이 나왔다. 정시에, 예산에 맞춰, 고품질 로. 프로젝트에 참여한 모든 사람에게 멋진 경험이었다. 첨단 기술로 만든 저울을 사용해 예상 중량에 미달되는 상자가 나오면 경보음과 함께 불이 번쩍 이게 만들었다. ➢ 라인은 멈추고 누군가 와서 라인에서 결함있는 상자를 제거하고, 라인을 재시작하게 버튼을 누르면 되었다. ➢ 추이 ➢ 얼마 지나지 않아 CEO는 프로젝트의 ROI를 살펴봤는데 환상적인 결과를 얻었다. 저울을 설치한 후에 빈 상자가 출시되지 않았다! 고객 불만은 없었고 시장 점유율은 올라갔다. “제대로 돈을 썼네!” 물론 보고서의 다른 통계 자료를 뜯어볼 때까지는 그랬다. ➢ 반전 ➢ 현장에 투입된지 3주일 후에 저울에서 걸려진 결함이 0건이 되었다. 최소한 하루에 10회는 걸려져야 마땅했으므로, 뭔가 보고서가 잘못된 듯이 보였다. ➢ 여기에 대해 조사반이 투입되었고 통계에 문제가 없음이 밝혀졌다. 저울은 어떤 결함도 찾지 못했는데, 저울까지 오는 컨베이어 벨트에 실린 상자가 모 두 정상이었기 때문이다. ➢ CEO는 현장에 내려가서 저울이 설치된 라인으로 걸어갔다. 저울 몇 피트 앞에 20달러짜리 탁상용 선풍기가 놓여있었고, 빈 상자를 벨트에서 날려 쓰레 기통으로 넣고 있었다. ➢ 이유는? (오늘의 논쟁) 돈을 제대로 썼을까? - 엔지니어를 위한 짧은 (그러나 교훈적인) 이야기 OKdevTV 1
  6. 6. • https://github.com/twowaits/SDE-Interview-Questions • 아마존, 페북, 구글, 마이크로소프트, 삼성 등 주요 회사들의 개발자 인터뷰 문제 모음집 • 예: • 페북) • Design URL Shortener → 힌트: base10에서 base62[a-zA-Z0-9] • 삼성전자) • What does malloc(0) return? → 힌트: https://pubs.opengroup.org/onlinepubs/000095399/functions/malloc.html • Implement you own strcat() function. Dont use string header. → 포인터만 사용해서! • 구글) • What is the approximate value of 2 to the power of 24? → 힌트: http://headinside.blogspot.com/2014/10/calculate-powers-of-2-in-your- head.html OKdevTV (개발) 구글 등 주요 회사의 [코딩 인터뷰] 모음2
  7. 7. OKdevTV (개발) git 연습 ➢https://gitexercises.fracz.com/ ➢깃 연습 ➢ 깃을 마스터하기 위해 하나씩 문제를 격파하는 방식 ➢ 실제 자신의 컴퓨터에서 수행 3
  8. 8. OKdevTV (개발) NestedText: JSON과 YAML은 가라!4 • https://nestedtext.org/en/stable/ • YAML과 비교해 장점 • 단순함 • 모호하지 않음 • 중요하지 않은 세부 사항에 의해 데이터 타입이 바뀌지 않음 • 안전함! • JSON과 비교해 장점 • 따옴표 없음 • 주석 달 수 있음 • 여러 행에 걸친 문자열 표현 가능 • 인코딩 없이 유니코드 사용 가능 • 딕셔너리와 리스트 항목을 위해 쉼표를 사용하지 않음 • 현재 파이썬에서 구현 • pip3 install --user nestedtext
  9. 9. OKdevTV (개발) egghead – 프론트엔드 개발자를 위한 동영상 모음5 • https://egghead.io/ • 자바스크립트 도구와 프레임워크를 다루는 동영상을 큐레이션
  10. 10. • https://opensource.com/article/20/10/shell-history-loki-fzf • 로깅 시스템인 Loki + 명령행 퍼지 검색기를 조합 • https://github.com/slim-bean/loki-shell에서 로키를 사용한 셸 통합 스크립트 제공 • CRTL+R을 누르면 마지막 30일 어치 로그를 가져와서 fzf로 전달(최대 50,000행) • 그러면 fzf가 퍼지 알고리즘으로 셸 히스토리를 출력 OKdevTV (개발) 셸 히스토리를 중앙 저장소에 모아보자6
  11. 11. • https://github.blog/2020-09-30-code-scanning-is-now-available/ • 여러분의 코드에서 보안 문제를 찾아줌 • CodeQL(코드 분석 엔진)을 사용해 2000개 이상의 질의(깃허브+공동체)로 보안 취약성을 분석 • 원격 코드 실행, 교차 스크립팅(XSS), SQL 삽입 공격 등을 감지 • 공개 저장소에 대해 무료 • 방법 • https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/enabling-code- scanning-for-a-repository OKdevTV (개발) 깃허브 – 코드 스캐닝 서비스 시작7
  12. 12. OKdevTV (우리가 몰랐던 사실) 요즘 컴파일러의 최적화 수준8 • https://godbolt.org/z/crvd5P • strlen 또는 size 함수를 루프 안에 넣으면 어떻게 될까?
  13. 13. OKdevTV (우리가 몰랐던 사실) 요즘 컴파일러의 최적화 수준8 • https://godbolt.org/z/crvd5P • C++11에서는 다음과 같이… 뭘해도 상수 시간에 처리 가능 • 결론: 컴파일러를 믿으라!

×