SlideShare une entreprise Scribd logo
1  sur  71
박호준
시니어 소프트웨어 엔지니어
LinkedIn
www.linkedin.com/in/justindoit
토종 개발자가 바라본
실리콘벨리 개발 트랜드
2
오늘은,
 간략한 소개
 링크드인 빅데이타 활용 사례
 링크드인 개발 프로세스 소개
 프로젝트 개발 스택 공유
 질의 응답
3
소개
 링크드인 비지니스 데이타 분석팀 시니어 소프트웨어 개발자 (현재)
 실리콘벨리 스타트업 프론트엔드 개발자 (Gala-net, SugarCRM)
 뉴욕 주립대 컴퓨터 공학 학사
 한국에서 5년간 웹 개발자 및 DBA (네오액트, 지니키즈, WCG)
4
링크드인 소개
11 years old
5
링크드인 소개
330,000,000
Members
6
링크드인 소개
25,000,000,000
Page Views
7
링크드인 소개
20,000,000,000
Connections
8
링크드인 소개
4,000,000
Companies
9
링크드인 비지니스 모델
LTS
Talent Solution
LMS
Marketing
Solution
LSS
Sales Solution
Hire Market Sell
webdev @ Linked[in]
Vertical Teams
Horizontal Teams
Play at Linkedin
Dust.li
Team
Money
Sales
Navigator
Branding
And
Marketing
pEMBERly
Recruit
Platform
Slideshare
REST.li
Linkedin
Profile[in]Mail
Davinci
11
링크드인 빅데이터 팀
What can we do
with Linkedin data
?
Sales
Talent flow between companies
Product & engineering
Is it simple?
Member attributes Page View events data
Photo Credit: https://www.flickr.com/photos/johnjoh/1060267344
Our data vineyard
Data infra: collect & ferment data
Collect & Ferment Data
Kafka + Hadoop
Serve Data
Pinot
Taste Data
Easy-to-use visualization
Data Computation
ETL
HDFS
Y
A
R
N
Map-Reduce Spark Tez
Pig Hive Cubert
Data infra: collect & ferment data
Collect & Ferment Data
Kafka + Hadoop
Serve Data
Pinot
Taste Data
Easy-to-use visualization
Products for members/customers with real-time
interactive analytics
• Who’s Viewed Your Profile
• Ads Reporting
• Jobs Analytics
Categories of interactive analytics products
Interactive business analytics for internal use
• How feature X is performing
Real-time business monitoring
• Page view changes across mobile devices
Reporting UI: serve & taste data
Collect & Ferment Data
Kafka + Hadoop
Serve Data
Pinot
Taste Data
Easy-to-use visualization
I want to access big data without
running SQL
Business need
Start a new dashboard with one click
Select what metrics/dimensions you want
Charts are rendered in just a few seconds
Zoom into a single chart
Filter on various dimensions
28
링크드인 개발 프로세스
How build a product at Linkedin
Daily Scrum
How build a product at Linkedin
 매일 오전 스크럼을 통한
의견교환
How build a product at Linkedin
 매일 오전 스크럼을 통한
의견교환
 개발자 스스로 결정하는
완료시점
How build a product at Linkedin
 매일 오전 스크럼을 통한
의견교환
 개발자 스스로 결정하는
완료시점
 언제 어디서든 진행상황을
공유가능
How build a product at Linkedin
How build a product at Linkedin
Rest.li (Data API)
https://github.com/linkedin/rest.li/wiki
Rest.li (Data API)
코드 리뷰
https://www.reviewboard.org/
코드 리뷰
코드 리뷰
코드 리뷰
41
A/B Testing (내부 테스트)
42
A/B Testing
43
A/B Testing (전체 유저대상)
44
A/B Testing
재발생되는 버그를 잡기 위해 웹드라이버 테스트를 활용
45
테스팅: Selenium WebDriver Tests
46
LID (Linkedin Deployment)
47
CRT
48
[in]Graph (Monitoring)
49
링크드인 개발 스택
50
Web Frameworks, recommend?
 Play
 Spring
 Ruby on Rails
 Yii
 Node.JS
 …
 Angular
 Backbone
 jQuery
 YUI
 Require
 Knockout
 Bootstrap
 …
51
Comparison
 http://todomvc.com/
52
We’re using,
53
개발 사례: BackboneJS on PHP
 Pure SPA
 Metadata Manager
 Data Manager
54
개발 사례: BackboneJS on Java Play
 Hybrid Web Application
 sbt-concat, sass compiler
 Model Hierarchy
55
개발 사례: AngularJS on Java Play
 Pure SPA
 Grunt Builder
 Less compiler by Grunt
56
왜 리소스 관리자가 중요한가?
 수많은 JS/CSS 라이브러리의 증가
 라이브러리 버젼 관리
 중복된 리소스 로딩으로 인한 페이지 로딩 지연
57
파일 및 디렉토리 구성(1)
 리소스 종류별로 구분
58
파일 및 디렉토리 구성(2)
 각 기능별로 구성
59
메타 데이타 관리자
 Sort the dependent modules (필수 모듈 순서대로 정렬)
FlexListView
extends: ListView
ListView
DashableListView
extends: ListView
RecordListView
Extends: FlexListView
ListView
FlexListView
extends: ListView
DashableListView
extends: ListView
RecordListView
Extends: FlexListView
Great Design patterns are reusable, modular
expressions of what’s going on in your code.
좋은 패턴 디자인은 재사용이 가능하고
무엇을 하려고 하는지 코드에 그대로 표현되어 나타난다.
They allow you to communicate to other
developers simply by the way you code,
in addition to being easily maintainable
themselves
패턴 디자인은 다른 개발자와의 코드 교환이 쉬우며,
각자가 관리 및 유지하기가 쉽게 해준다. 60
왜 디자인 패턴을 사용해야 하나?
61
디자인 패턴들
 Factory
 Singleton
 MVC
 Strongly OOP
 Mixin
 Event Driven
62
객체 지향적 프로그래밍
 코드를 재활용하고 재사용가능
 직관적인 코드 디자인
 시간당 생산량 증가
ListView
FlexListView
SubPanelListView
DashableListView
RecordListViewSelectionListView
Mixin pool
63
Decorator: 믹스인 (플러그인)
RecordListView
extends: ListView
ErrorDecoration
Editable
MergeDuplicates
CreateView
Audit
FindDuplicates
Tooltip
ListView MergeDuplicateView
Timeago
ActivityStreamView
64
성능 튜닝
 중복된 이벤트 감시자를 줄인다
 이벤트 감시자 최적화
 Backbone: _events stack
 Angular: $__watchers, and $scope variables in $digest cycle
 다음은 얼마나 많은 감시자가 추가 되었을지 생각해 봅시다.
65
브라우져는 죄가 없습니다.
66
메모리 관리
 개별적으로 할당한 메모리는
책임지고 해지 시켜준다
67
메모리 관리: 계속
 유닛 테스트를 활용하여 메모리
누수 여부를 파악 한다
68
디버깅
 파이어버그
 크롬 개발자 도구
 Network filtering
 Recording
 Profiler
 Local Storage in resources tab
69
유닛 테스트
 Jasmine, Karma, Sinon
 Travis CI
 Selenium WebDriver
70
Q & A
71
개인적인 질문
편하게 이메일로 보내주세요
^^

Contenu connexe

Tendances

Lablupconf session1-1 "Lablup과 함께하는 컨트리뷰션 아카데미" - 김수진
Lablupconf session1-1 "Lablup과 함께하는 컨트리뷰션 아카데미" - 김수진Lablupconf session1-1 "Lablup과 함께하는 컨트리뷰션 아카데미" - 김수진
Lablupconf session1-1 "Lablup과 함께하는 컨트리뷰션 아카데미" - 김수진Lablup Inc.
 
[세미나] 20160520 Gradle
[세미나] 20160520 Gradle[세미나] 20160520 Gradle
[세미나] 20160520 GradleSanghoon Yoon
 
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전Atlassian 대한민국
 
델파이 코드 마이그레이션 Step by Step
델파이 코드 마이그레이션 Step by Step델파이 코드 마이그레이션 Step by Step
델파이 코드 마이그레이션 Step by StepDevgear
 
[AIS 2018] [Team Tools_Advanced] Altassian 기능 확장과 구축사례 - 한국정보컨설팅
[AIS 2018] [Team Tools_Advanced] Altassian 기능 확장과 구축사례 - 한국정보컨설팅[AIS 2018] [Team Tools_Advanced] Altassian 기능 확장과 구축사례 - 한국정보컨설팅
[AIS 2018] [Team Tools_Advanced] Altassian 기능 확장과 구축사례 - 한국정보컨설팅Atlassian 대한민국
 
Polaris Office - 제품 기획부터 출시까지 - 인프라웨어 테크놀러지
Polaris Office - 제품 기획부터 출시까지 - 인프라웨어 테크놀러지Polaris Office - 제품 기획부터 출시까지 - 인프라웨어 테크놀러지
Polaris Office - 제품 기획부터 출시까지 - 인프라웨어 테크놀러지Atlassian 대한민국
 
Atlassian 트러블슈팅 및 가상화기반 Confluence Data Center 구축 - 오픈소스...
Atlassian 트러블슈팅 및 가상화기반 Confluence Data Center 구축 - 오픈소스...Atlassian 트러블슈팅 및 가상화기반 Confluence Data Center 구축 - 오픈소스...
Atlassian 트러블슈팅 및 가상화기반 Confluence Data Center 구축 - 오픈소스...Atlassian 대한민국
 
[AIS 2018][Team Tools_Basic] Atlassian 제품 기반의 DevOps 구성 - 투씨드
[AIS 2018][Team Tools_Basic] Atlassian 제품 기반의 DevOps 구성 - 투씨드[AIS 2018][Team Tools_Basic] Atlassian 제품 기반의 DevOps 구성 - 투씨드
[AIS 2018][Team Tools_Basic] Atlassian 제품 기반의 DevOps 구성 - 투씨드Atlassian 대한민국
 

Tendances (9)

Lablupconf session1-1 "Lablup과 함께하는 컨트리뷰션 아카데미" - 김수진
Lablupconf session1-1 "Lablup과 함께하는 컨트리뷰션 아카데미" - 김수진Lablupconf session1-1 "Lablup과 함께하는 컨트리뷰션 아카데미" - 김수진
Lablupconf session1-1 "Lablup과 함께하는 컨트리뷰션 아카데미" - 김수진
 
[세미나] 20160520 Gradle
[세미나] 20160520 Gradle[세미나] 20160520 Gradle
[세미나] 20160520 Gradle
 
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전
 
델파이 코드 마이그레이션 Step by Step
델파이 코드 마이그레이션 Step by Step델파이 코드 마이그레이션 Step by Step
델파이 코드 마이그레이션 Step by Step
 
[AIS 2018] [Team Tools_Advanced] Altassian 기능 확장과 구축사례 - 한국정보컨설팅
[AIS 2018] [Team Tools_Advanced] Altassian 기능 확장과 구축사례 - 한국정보컨설팅[AIS 2018] [Team Tools_Advanced] Altassian 기능 확장과 구축사례 - 한국정보컨설팅
[AIS 2018] [Team Tools_Advanced] Altassian 기능 확장과 구축사례 - 한국정보컨설팅
 
Polaris Office - 제품 기획부터 출시까지 - 인프라웨어 테크놀러지
Polaris Office - 제품 기획부터 출시까지 - 인프라웨어 테크놀러지Polaris Office - 제품 기획부터 출시까지 - 인프라웨어 테크놀러지
Polaris Office - 제품 기획부터 출시까지 - 인프라웨어 테크놀러지
 
Costar s2
Costar s2Costar s2
Costar s2
 
Atlassian 트러블슈팅 및 가상화기반 Confluence Data Center 구축 - 오픈소스...
Atlassian 트러블슈팅 및 가상화기반 Confluence Data Center 구축 - 오픈소스...Atlassian 트러블슈팅 및 가상화기반 Confluence Data Center 구축 - 오픈소스...
Atlassian 트러블슈팅 및 가상화기반 Confluence Data Center 구축 - 오픈소스...
 
[AIS 2018][Team Tools_Basic] Atlassian 제품 기반의 DevOps 구성 - 투씨드
[AIS 2018][Team Tools_Basic] Atlassian 제품 기반의 DevOps 구성 - 투씨드[AIS 2018][Team Tools_Basic] Atlassian 제품 기반의 DevOps 구성 - 투씨드
[AIS 2018][Team Tools_Basic] Atlassian 제품 기반의 DevOps 구성 - 투씨드
 

En vedette

애플리케이션 개발 단계에서의 성능 품질과 생산성 효율, 둘 다 잡기
애플리케이션 개발 단계에서의 성능 품질과 생산성 효율, 둘 다 잡기애플리케이션 개발 단계에서의 성능 품질과 생산성 효율, 둘 다 잡기
애플리케이션 개발 단계에서의 성능 품질과 생산성 효율, 둘 다 잡기Ki Bae Kim
 
사물인터넷에 활용되는 무선통신 기술
사물인터넷에 활용되는 무선통신 기술사물인터넷에 활용되는 무선통신 기술
사물인터넷에 활용되는 무선통신 기술남억 김
 
Writing a massive javascript app
Writing a massive javascript appWriting a massive javascript app
Writing a massive javascript appJustin Park
 
폐기물부담금관련(IHLSHIN)
폐기물부담금관련(IHLSHIN)폐기물부담금관련(IHLSHIN)
폐기물부담금관련(IHLSHIN)근우 정
 
Mcollective orchestration tool 소개
Mcollective orchestration tool 소개Mcollective orchestration tool 소개
Mcollective orchestration tool 소개태준 문
 
2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여
2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여
2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여iamprogrammerofficial
 
UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)
UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)
UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)Billy Choi
 
practical perf testing - d2startup
practical perf testing - d2startuppractical perf testing - d2startup
practical perf testing - d2startupJunHo Yoon
 
Messaging With Apache ActiveMQ
Messaging With Apache ActiveMQMessaging With Apache ActiveMQ
Messaging With Apache ActiveMQBruce Snyder
 
모바일 개발 트랜드
모바일 개발 트랜드모바일 개발 트랜드
모바일 개발 트랜드Terry Cho
 
ActiveMQ In Action
ActiveMQ In ActionActiveMQ In Action
ActiveMQ In ActionBruce Snyder
 
별천지세미나(2회) 세션5 hamlet
별천지세미나(2회) 세션5 hamlet별천지세미나(2회) 세션5 hamlet
별천지세미나(2회) 세션5 hamletJongKwang Kim
 
Deview2013 presentation ver1.8_final
Deview2013 presentation ver1.8_finalDeview2013 presentation ver1.8_final
Deview2013 presentation ver1.8_finalNAVER D2
 
[2012널리세미나] 네이버의 웹 접근성 개선 방향
[2012널리세미나] 네이버의 웹 접근성 개선 방향[2012널리세미나] 네이버의 웹 접근성 개선 방향
[2012널리세미나] 네이버의 웹 접근성 개선 방향Nts Nuli
 
Messaging With ActiveMQ
Messaging With ActiveMQMessaging With ActiveMQ
Messaging With ActiveMQBruce Snyder
 
Jco14 오픈소스를 이용한 모니터링 방법
Jco14 오픈소스를 이용한 모니터링 방법Jco14 오픈소스를 이용한 모니터링 방법
Jco14 오픈소스를 이용한 모니터링 방법정수 한
 
빌링:미터링 Bss platform구현
빌링:미터링 Bss platform구현빌링:미터링 Bss platform구현
빌링:미터링 Bss platform구현상욱 송
 
Thing+ 소개자료(daliworks)
Thing+ 소개자료(daliworks)Thing+ 소개자료(daliworks)
Thing+ 소개자료(daliworks)Soonho Lee
 

En vedette (20)

애플리케이션 개발 단계에서의 성능 품질과 생산성 효율, 둘 다 잡기
애플리케이션 개발 단계에서의 성능 품질과 생산성 효율, 둘 다 잡기애플리케이션 개발 단계에서의 성능 품질과 생산성 효율, 둘 다 잡기
애플리케이션 개발 단계에서의 성능 품질과 생산성 효율, 둘 다 잡기
 
사물인터넷에 활용되는 무선통신 기술
사물인터넷에 활용되는 무선통신 기술사물인터넷에 활용되는 무선통신 기술
사물인터넷에 활용되는 무선통신 기술
 
Writing a massive javascript app
Writing a massive javascript appWriting a massive javascript app
Writing a massive javascript app
 
폐기물부담금관련(IHLSHIN)
폐기물부담금관련(IHLSHIN)폐기물부담금관련(IHLSHIN)
폐기물부담금관련(IHLSHIN)
 
Mcollective orchestration tool 소개
Mcollective orchestration tool 소개Mcollective orchestration tool 소개
Mcollective orchestration tool 소개
 
2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여
2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여
2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여
 
korea nia
korea niakorea nia
korea nia
 
UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)
UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)
UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)
 
practical perf testing - d2startup
practical perf testing - d2startuppractical perf testing - d2startup
practical perf testing - d2startup
 
Messaging With Apache ActiveMQ
Messaging With Apache ActiveMQMessaging With Apache ActiveMQ
Messaging With Apache ActiveMQ
 
Active MQ
Active MQActive MQ
Active MQ
 
모바일 개발 트랜드
모바일 개발 트랜드모바일 개발 트랜드
모바일 개발 트랜드
 
ActiveMQ In Action
ActiveMQ In ActionActiveMQ In Action
ActiveMQ In Action
 
별천지세미나(2회) 세션5 hamlet
별천지세미나(2회) 세션5 hamlet별천지세미나(2회) 세션5 hamlet
별천지세미나(2회) 세션5 hamlet
 
Deview2013 presentation ver1.8_final
Deview2013 presentation ver1.8_finalDeview2013 presentation ver1.8_final
Deview2013 presentation ver1.8_final
 
[2012널리세미나] 네이버의 웹 접근성 개선 방향
[2012널리세미나] 네이버의 웹 접근성 개선 방향[2012널리세미나] 네이버의 웹 접근성 개선 방향
[2012널리세미나] 네이버의 웹 접근성 개선 방향
 
Messaging With ActiveMQ
Messaging With ActiveMQMessaging With ActiveMQ
Messaging With ActiveMQ
 
Jco14 오픈소스를 이용한 모니터링 방법
Jco14 오픈소스를 이용한 모니터링 방법Jco14 오픈소스를 이용한 모니터링 방법
Jco14 오픈소스를 이용한 모니터링 방법
 
빌링:미터링 Bss platform구현
빌링:미터링 Bss platform구현빌링:미터링 Bss platform구현
빌링:미터링 Bss platform구현
 
Thing+ 소개자료(daliworks)
Thing+ 소개자료(daliworks)Thing+ 소개자료(daliworks)
Thing+ 소개자료(daliworks)
 

Similaire à 토종 개발자가 바라본 실리콘밸리 개발 트랜드

모바일 앱 개발을 위한 Agile 적용
모바일 앱 개발을 위한 Agile 적용모바일 앱 개발을 위한 Agile 적용
모바일 앱 개발을 위한 Agile 적용Kevin Kim
 
DevSecOps 그리고 협업 - GitLab
DevSecOps 그리고 협업 - GitLabDevSecOps 그리고 협업 - GitLab
DevSecOps 그리고 협업 - GitLabGuenjun Yoo
 
지속적인 통합
지속적인 통합지속적인 통합
지속적인 통합중선 곽
 
[Atlassian meets dev ops and itsm] infrastructure for devops
[Atlassian meets dev ops and itsm] infrastructure for devops[Atlassian meets dev ops and itsm] infrastructure for devops
[Atlassian meets dev ops and itsm] infrastructure for devopsOpen Source Consulting
 
Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3uEngine Solutions
 
개발 방식을 바꾸는 15가지 기술
개발 방식을 바꾸는 15가지 기술개발 방식을 바꾸는 15가지 기술
개발 방식을 바꾸는 15가지 기술중선 곽
 
델파이 소스코드의재발견
델파이 소스코드의재발견델파이 소스코드의재발견
델파이 소스코드의재발견Devgear
 
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해Terry Cho
 
SAYAHAE - 상품평 분석 및 추천 서비스 (자연어 처리)
SAYAHAE - 상품평 분석 및 추천 서비스 (자연어 처리)SAYAHAE - 상품평 분석 및 추천 서비스 (자연어 처리)
SAYAHAE - 상품평 분석 및 추천 서비스 (자연어 처리)Eunchan Lee
 
좋은 개발자 되기
좋은 개발자 되기좋은 개발자 되기
좋은 개발자 되기Sunghyouk Bae
 
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료지원 정
 
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)승용 윤
 
[오픈소스컨설팅] 2019년 클라우드 생존전략
[오픈소스컨설팅] 2019년 클라우드 생존전략[오픈소스컨설팅] 2019년 클라우드 생존전략
[오픈소스컨설팅] 2019년 클라우드 생존전략Ji-Woong Choi
 
Big Data platform을 위한 Sencha Ext JS 사례.
Big Data platform을 위한 Sencha Ext JS 사례.Big Data platform을 위한 Sencha Ext JS 사례.
Big Data platform을 위한 Sencha Ext JS 사례.효근 박
 
Open source community Building
Open source community BuildingOpen source community Building
Open source community BuildingKevin Kim
 
[D2 COMMUNITY] Open Container Seoul Meetup - 마이크로 서비스 아키텍쳐와 Docker kubernetes
[D2 COMMUNITY] Open Container Seoul Meetup -  마이크로 서비스 아키텍쳐와 Docker kubernetes[D2 COMMUNITY] Open Container Seoul Meetup -  마이크로 서비스 아키텍쳐와 Docker kubernetes
[D2 COMMUNITY] Open Container Seoul Meetup - 마이크로 서비스 아키텍쳐와 Docker kubernetesNAVER D2
 
클라우드 네이티브로의 전환을 위한 여정
클라우드 네이티브로의 전환을 위한 여정클라우드 네이티브로의 전환을 위한 여정
클라우드 네이티브로의 전환을 위한 여정VMware Tanzu Korea
 
개방형 혁신 연구개발 프로젝트를 위한 거버넌스 구축
개방형 혁신 연구개발 프로젝트를 위한 거버넌스 구축개방형 혁신 연구개발 프로젝트를 위한 거버넌스 구축
개방형 혁신 연구개발 프로젝트를 위한 거버넌스 구축Kevin Kim
 
대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014
대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014
대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014NDOORS
 

Similaire à 토종 개발자가 바라본 실리콘밸리 개발 트랜드 (20)

모바일 앱 개발을 위한 Agile 적용
모바일 앱 개발을 위한 Agile 적용모바일 앱 개발을 위한 Agile 적용
모바일 앱 개발을 위한 Agile 적용
 
DevSecOps 그리고 협업 - GitLab
DevSecOps 그리고 협업 - GitLabDevSecOps 그리고 협업 - GitLab
DevSecOps 그리고 협업 - GitLab
 
지속적인 통합
지속적인 통합지속적인 통합
지속적인 통합
 
[Atlassian meets dev ops and itsm] infrastructure for devops
[Atlassian meets dev ops and itsm] infrastructure for devops[Atlassian meets dev ops and itsm] infrastructure for devops
[Atlassian meets dev ops and itsm] infrastructure for devops
 
Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3
 
개발 방식을 바꾸는 15가지 기술
개발 방식을 바꾸는 15가지 기술개발 방식을 바꾸는 15가지 기술
개발 방식을 바꾸는 15가지 기술
 
델파이 소스코드의재발견
델파이 소스코드의재발견델파이 소스코드의재발견
델파이 소스코드의재발견
 
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
 
SAYAHAE - 상품평 분석 및 추천 서비스 (자연어 처리)
SAYAHAE - 상품평 분석 및 추천 서비스 (자연어 처리)SAYAHAE - 상품평 분석 및 추천 서비스 (자연어 처리)
SAYAHAE - 상품평 분석 및 추천 서비스 (자연어 처리)
 
좋은 개발자 되기
좋은 개발자 되기좋은 개발자 되기
좋은 개발자 되기
 
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
 
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
 
Sencha ExtJS를 활용한 Big Data Platform 개발 사례
Sencha ExtJS를 활용한 Big Data Platform 개발 사례 Sencha ExtJS를 활용한 Big Data Platform 개발 사례
Sencha ExtJS를 활용한 Big Data Platform 개발 사례
 
[오픈소스컨설팅] 2019년 클라우드 생존전략
[오픈소스컨설팅] 2019년 클라우드 생존전략[오픈소스컨설팅] 2019년 클라우드 생존전략
[오픈소스컨설팅] 2019년 클라우드 생존전략
 
Big Data platform을 위한 Sencha Ext JS 사례.
Big Data platform을 위한 Sencha Ext JS 사례.Big Data platform을 위한 Sencha Ext JS 사례.
Big Data platform을 위한 Sencha Ext JS 사례.
 
Open source community Building
Open source community BuildingOpen source community Building
Open source community Building
 
[D2 COMMUNITY] Open Container Seoul Meetup - 마이크로 서비스 아키텍쳐와 Docker kubernetes
[D2 COMMUNITY] Open Container Seoul Meetup -  마이크로 서비스 아키텍쳐와 Docker kubernetes[D2 COMMUNITY] Open Container Seoul Meetup -  마이크로 서비스 아키텍쳐와 Docker kubernetes
[D2 COMMUNITY] Open Container Seoul Meetup - 마이크로 서비스 아키텍쳐와 Docker kubernetes
 
클라우드 네이티브로의 전환을 위한 여정
클라우드 네이티브로의 전환을 위한 여정클라우드 네이티브로의 전환을 위한 여정
클라우드 네이티브로의 전환을 위한 여정
 
개방형 혁신 연구개발 프로젝트를 위한 거버넌스 구축
개방형 혁신 연구개발 프로젝트를 위한 거버넌스 구축개방형 혁신 연구개발 프로젝트를 위한 거버넌스 구축
개방형 혁신 연구개발 프로젝트를 위한 거버넌스 구축
 
대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014
대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014
대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014
 

토종 개발자가 바라본 실리콘밸리 개발 트랜드

Notes de l'éditeur

  1. 크라우드 서비스의 발전은 프론트엔드와 연관됨
  2. SugarCRM에서 BackboneJS, PHP API Framework을 이용하여 싱글페이지어플리케이션을 개발
  3. 11주년
  4. 3억3천만명, 200+ 국가, 23개 언어
  5. 년간 2백5십억 페이지뷰
  6. 200억, 액티브 30만개의 잡포스팅
  7. 4백만 회사 페이지, 만여개의 프로패녀설 스킬셋, 3백만개의 활동하고 있는 회사 프로파일 페이지
  8. 자료의 복잡성
  9. Easybi steps -> 1. connect the source in pinot (bottle opener), 2. select time/dimension/metrics (choose glass), 3. group charts in one dashboard (taste) Acquire Parse Filter Mine Represent Refine Interact
  10. 링크드인에서는 아파치 카프카 (which is built and opensourced at Linkedin)를 이용해 모든 실시간 자료를 기록하고 있습니다. 카프카를 포함한 모든 다른 데이타 리소스는 ETL (Extract, Transform, Load) 과정을 통해서 하둡 데이터 웨어하우스에 기록됩니다. 데이타 사이언티스트들은 주로 Pig, Hive or java MR 등을 사용하여 분석이 필요한 메트릭스 자료를 수집하고 계산해냅니다. 하지만 링크드인역시 엄청난 데이타 사이즈로 인해서 조인등 데이타 수집과정에 엄청한 시간이 소요되기때문에 Cubert라는 자체 프레임워크를 개발하여 분산 처리된 자료를 데이타 사이언티스트와 같은 빅데이타 수요자 인프라에 제공합니다.
  11. 그럼 복잡하고 다양한 데이타 분석자료를 어떻게 가공하고 만들어낼까요?
  12. 링크드인은 데이타 회사로 내부에서 일어나는 빅데이타를 여러가지 측면에서 활용하고 있습니다. 수많은 활동을 분석하여 트랜드를 공개하는 who’s viewed your profile: 이 제품을 통해 어떤 분야 있는 사람이 어떤 구직자들에게 관심을 가지고 있는지를 파악할 수 있게됩니다. Ads Reporting은 광고주에게 광고된 자료가 어떤 효과가 있는지를 객관적으로 분석하여 보여줌으로써 광고효과를 파악하게 해줍니다. 프리미엄서비스를 사용해보시면 이외에 수많은 수치 자료들을 확인해보실 수 있습니다.. 다음으로 중요하게 사용되고 있는 분야는 PM들에게 현재 공개된 제품의 반응을 실시간적으로 파악하게 해줍니다. Business Monitoring: 가장 중요한 부분중 하나인 비지니스 퍼포먼스 모니터링입니다. 실시간적으로 실제 성장과 가장 민감하게 연결된 자료를 파악함으로써 문제점 혹은 경쟁사의 영향력등을 파악하고 있습니다. The origin of this infrastructure is in team money with monetization use cases. There were many analytics usecases from jobs, ads to recruiter that were demanding a single leverageable system. We did extensive research and couldn’t find any existing systems that’s designed specifically for this at that time. That’s how Pinot was born. Now the leverage is so huge that the WVMP page is powered by Pinot. Little later, the Business Analytics team saw the power of the system, they wanted to take the data that is in hadoop and provide an ability to interact with it. We worked with them and setup a cluster to support Sponsored Content In Network Updates Dashboard. This is to help our PM’s interact with the data and get insights on how their product is being used. Once that’s proven to be useful, now we are trying to use pinot to monitor on business metrics, like monitoring ads revenue drop across geo etc.
  13. Easybi steps -> 1. connect the source in pinot (bottle opener), 2. select time/dimension/metrics (choose glass), 3. group charts in one dashboard (taste) Acquire Parse Filter Mine Represent Refine Interact
  14. Easybi steps -> 1. connect the source in pinot (bottle opener), 2. select time/dimension/metrics (choose glass), 3. group charts in one dashboard (taste) Acquire Parse Filter Mine Represent Refine Interact
  15. Dashboard name: Marketing Hide left bar at first Time range doesn’t match
  16. Dashboard name: Marketing Hide left bar at first Time range doesn’t match
  17. Dashboard name: Marketing Hide left bar at first Time range doesn’t match
  18. Dashboard name: Marketing Hide left bar at first Time range doesn’t match
  19. Dashboard name: Marketing Hide left bar at first Time range doesn’t match
  20. 원격으로 공유가능
  21. 툴은 인턴들 과제로 많이 할당됨
  22. Startup은 Github를 주로 사용하는 추세
  23. https://www.reviewboard.org/ Startup은 Github를 주로 사용하는 추세
  24. https://www.reviewboard.org/ Startup은 Github를 주로 사용하는 추세
  25. 좋은것은 없다 다만 MVC 패턴이 잘갖춰진 프레임워크를 고르자
  26. 좋은것은 없다 다만 MVC 패턴이 잘갖춰진 프레임워크를 고르자
  27. 좋은것은 없다 다만 MVC 패턴이 잘갖춰진 프레임워크를 고르자
  28. 데모와 함께 소개
  29. A joy is not to be attached deeply cause attachement brings suffer
  30. JS 경우 event based async 랭귀지이기때문에 설계가 중요 Front-end also follows software design patterns
  31. 데모와 함께 소개
  32. 크롬 시크릿(incognito) 모드로 체크할것!
  33. 크롬 시크릿(incognito) 모드로 체크할것!