SlideShare une entreprise Scribd logo
1  sur  18
Staying current in a
changing marketplace
Denver Code Club Meetup Craig Martin, Vice President of
Engineering
January 19th, 2017
Agenda
● Changing market
● Approach and Adopting a new
technology
● Staying Current
● Evaluation Process
● How Kenzan does it:
○ Tech Radar
○ Skills Matrix / Badge Board
○ Internal Projects
○ Open Source Projects
2003
SOAP Webservices
becomes popular
Technology
changes really
fast.
2005
Google
Maps & YouTube 2006
Initial AWS Cloud offerings
2008
RESTful Webservices
take hold
2013
March
● React released
● Initial Docker release
2011
● Google Cloud Platform
● January - Kafka
● December - Hadoop
2010
● February - Azure
● October - Angular
2014
● May - Apache Spark
● June - Initial
Kubernetes release
● October - HTML 5 2015
● January - Swagger
2016
● January - Serverless
architectures
● September - Angular 2
● July - Apache Mesos
Approaching a new technology
To keep in mind!:
Perseverance will pay off
You never stop learning
Different technologies and
starting points have different
kinds of learning curves
Adoption Expectations
How to stay current?
In a changing market
In Technology, standing still means falling behind
• Two main perspectives
Individual or Company
• Correct attitude
Embrace the change
Create a culture or an attitude of looking forward
• Be critical
For every good product there is a “Clippy”
• Apply in real world situations
• Evaluate the alternatives
Is there a market need?
Why is it better?
• Review from many perspectives (not just technology)
Technology evaluation
● Updating/modernizing
existing legacy
applications
● Comparing “old” vs
“new” technologies
● Evaluating emerging
technologies
COMMON
DRIVERS
COMMON
PITFALLS
● Resume driven
development
● Treating technology
stacks different than
architectural patterns
● Lack of consistency in
approach
● Stuck in the theoretical
- Start Building!
Modernizing existing application
Common Use Case: Company has an existing legacy application that needs a major feature overhaul or
needs an upgrade.
1. Start with an honest
evaluation of existing
application stack
a. What does it do well vs
not so well (e.g.
scalability, modularity,
releases, extensibility,
support, etc)
b. How much of the
challenges is related to
the technology?
c. Maybe code/arch
cleanup would be
better?
d. Understand the
architectural patterns
2. Determine list of potential
technology replacements
3. Use the Pros and Cons
as a template for each
technology
a. Evaluate each pro
and con against the
potential technology
b. Suitability fit with
development team(s)
4. Evaluate the “activity” of
the the technology
a. Lots of committers?
b. Open Source vs Closed
Source
c. Release Cadence
d. Available tooling and
Plugins
5. Overall technology
evaluation
a. Ease of use, code
management, cost,
complexity
Comparing Old vs New
Common Use Case: Company has a new tool or feature that needs to be built and we want to choose the right
technology.
Objective evaluation of pros
and cons:
● Differences in paradigm
or architecture
approach
● Features and gaps in
tech
● Performance
● Extensibility
● Activity & popularity =
resources and support
Compare costs of each
technology
● Open source
technologies vs
licensed technologies
● Maintenance costs are
expensive and will most
likely rise
Team Dynamics
● Skills of team
● Code handoffs Likelihood of longevity
● Judge by popularity
over time
● Extensibility
● Voodoo Magic
Evaluating Emerging Technologies
Common Use Cases:
● Helping clients to determine the correct strategic direction for their organization.
● Determining the technologies in market verticals and help establish the direction of the organization.
Identify POC to get hands
on with technology
● Focus on risk areas
● Establish checkpoints
along the way
Understand and the market or client
needs:
● Problems that need solving (industry
gaps)
● Challenges unique to the vertical
● Current competencies in the
organization or marketplace
● Competition evaluation
Builds on the technology
evaluations from above:
● Pros and Cons
● Costs
● Team Dynamics
● Longevity
Develop adoption plan and
implementation strategy
● Switching over legacy apps
● Training Staff
● Rollout strategy
WHO?
Find the right
people!
WHAT?
The training!
WHEN?
Project!
● Not all people love
picking up new
technologies
● Prove out critical challenges
● Dedicate a percentage of the
week/month to learn the new
technology
● Leverage online resources and
provide training when needed
● BUILD, BUILD BUILD!
● Join meetups and conferences in
town
● Present a tech talk or teach to others
● Start building immediately
● Don’t be afraid to jump “too early”
into the project
● Working on it is part of the
learning curve, and will shorten
the productivity dip time
Tips on How
How Kenzan does it....
• Tech Radar
• Skills Matrix
• Badge Board
• Building Skills
• Internal Projects
• Open Source Projects
Tech Radar
Subject Matter Quadrants
● Languages and Frameworks
● Tools
● Techniques
● Platforms
Evaluation
Adopt (2 rings)
Technologies in use, or
recommended to clients.
Trial
Technologies should be used on
internal projects or open source
projects to gain practical experience.
Evaluation
Technologies worth putting effort
toward investigating, pursued to
generate a proof-of-concept.
Hold
Technologies not yet ready, out of
date, or too risky to be used
Tech Radar Maintenance
Tech Radar
Maintenance
Starts with the right people:
● Attitude and desire is
importance
● Honest and critical (no
ego’s)
Routine meetings with tech
leadership
● Monitor and discuss
new technologies
● Discuss P.O.C. for
emerging technologies
● Monitor existing legacy
technologies
● Evaluate in progress
P.O.C’s
Author competencies for
relevant emerging
technologies
Routine “checkpoints” for
projects and people
● Project completion
● employee project
rolloff
● Manager & employee
checkins
Skills matrix and competencies
● Skills matrix is the sum of all the skills that we have
● Each skill has a set of competencies
● Typically broken into 3 different levels (Beginner, Intermediate, Expert)
● Goal is to have the “Kenzan Standards” of competencies
● Will be established once it is added to the tech radar
○ Only filled out when it becomes relevant
badge board
The goal of the board is to have an
accurate representation of all the
skills within Kenzan.
Functions:
● Provide the resourcing team a
mechanism to determine which
employees are best suited for a
project
● Provide tenured employees a
set of skills to work towards
and competencies to meet
those skills
● Set and track the "technology
stack" within Kenzan's
organization
It’s expected and encouraged that
the badge board will evolve over
time. This will happen both from a
tech stack perspective and from a
employee skills perspective.
Open Source
Projects
Open Source and Internal projects
are strongly tied to Tech Radar and
Badge Board
Open Source:
● Kenzan benefits a lot of the open
source community
● Open source projects are Kenzan’s
contribution to the community
● Usually created as Proof-Of-Concepts
and experimentation with emerging
technologies spotted in the Tech
Radar.
Internal Projects:
● Internal projects are for internal
Kenzan IP
● They are created by “bench”
employees
● Opportunity to pick up new
technologies and earn badges
Examples of Open Source Projects:
● MSL (Million Song Library) -> Angular + Java +
Netflix + Cassandra:
https://github.com/kenzanlabs/million-song-library
● Keystone (Front End Build Tool) -> Node + Gulp +
Yeoman:
https://github.com/kenzanlabs/keystone
Internal Projects:
● Kenzan.IO -> React.JS, Wordpress API:
http://kenzan.io
● Tech Radar -> React.JS + Redux + Node
Want to learn more?
Follow us!
@kenzanmedia
www.linkedin.com/company/kenzan-media
techblog.kenzan.com
www.facebook.com/kenzanmedia/

Contenu connexe

Tendances

Accelerating development velocity of production ml systems with docker
Accelerating development velocity of production ml systems with dockerAccelerating development velocity of production ml systems with docker
Accelerating development velocity of production ml systems with docker
Docker, Inc.
 
Fine-Tuning of Agile Development
Fine-Tuning of Agile DevelopmentFine-Tuning of Agile Development
Fine-Tuning of Agile Development
Thoughtworks
 
Developer Productivity Engineering with Gradle
Developer Productivity Engineering with GradleDeveloper Productivity Engineering with Gradle
Developer Productivity Engineering with Gradle
All Things Open
 

Tendances (20)

Learning the Alphabet: A/B, CD and [E-Z] in the Docker Datacenter by Brett Ti...
Learning the Alphabet: A/B, CD and [E-Z] in the Docker Datacenter by Brett Ti...Learning the Alphabet: A/B, CD and [E-Z] in the Docker Datacenter by Brett Ti...
Learning the Alphabet: A/B, CD and [E-Z] in the Docker Datacenter by Brett Ti...
 
Cloud-native Application Lifecycle Management
Cloud-native Application Lifecycle ManagementCloud-native Application Lifecycle Management
Cloud-native Application Lifecycle Management
 
Accelerating development velocity of production ml systems with docker
Accelerating development velocity of production ml systems with dockerAccelerating development velocity of production ml systems with docker
Accelerating development velocity of production ml systems with docker
 
Cloud Economics - Crayon Optimization Services
Cloud Economics - Crayon Optimization ServicesCloud Economics - Crayon Optimization Services
Cloud Economics - Crayon Optimization Services
 
Advanced dev ops governance with terraform
Advanced dev ops governance with terraformAdvanced dev ops governance with terraform
Advanced dev ops governance with terraform
 
Fully Orchestrating Applications, Microservices and Enterprise Services with ...
Fully Orchestrating Applications, Microservices and Enterprise Services with ...Fully Orchestrating Applications, Microservices and Enterprise Services with ...
Fully Orchestrating Applications, Microservices and Enterprise Services with ...
 
Fine-Tuning of Agile Development
Fine-Tuning of Agile DevelopmentFine-Tuning of Agile Development
Fine-Tuning of Agile Development
 
Journey Through Four Stages of Kubernetes Deployment Maturity
Journey Through Four Stages of Kubernetes Deployment MaturityJourney Through Four Stages of Kubernetes Deployment Maturity
Journey Through Four Stages of Kubernetes Deployment Maturity
 
Improving Your Company’s Health with Middleware Takeout
Improving Your Company’s Health with Middleware TakeoutImproving Your Company’s Health with Middleware Takeout
Improving Your Company’s Health with Middleware Takeout
 
Tackle Containerization Advisor (TCA) for Legacy Applications
Tackle Containerization Advisor (TCA) for Legacy ApplicationsTackle Containerization Advisor (TCA) for Legacy Applications
Tackle Containerization Advisor (TCA) for Legacy Applications
 
Use Docker to Deliver Cognitive Services Running Cross Platform and Multi Clo...
Use Docker to Deliver Cognitive Services Running Cross Platform and Multi Clo...Use Docker to Deliver Cognitive Services Running Cross Platform and Multi Clo...
Use Docker to Deliver Cognitive Services Running Cross Platform and Multi Clo...
 
Cleaner Code Through Test-Driven Development
Cleaner Code Through Test-Driven DevelopmentCleaner Code Through Test-Driven Development
Cleaner Code Through Test-Driven Development
 
Operator development made easy with helm
Operator development made easy with helmOperator development made easy with helm
Operator development made easy with helm
 
GDG Cloud Southlake #8 Steve Cravens: Infrastructure as-Code (IaC) in 2022: ...
GDG Cloud Southlake #8  Steve Cravens: Infrastructure as-Code (IaC) in 2022: ...GDG Cloud Southlake #8  Steve Cravens: Infrastructure as-Code (IaC) in 2022: ...
GDG Cloud Southlake #8 Steve Cravens: Infrastructure as-Code (IaC) in 2022: ...
 
GOTOpia 2/2021 "Cloud Native Development Without the Toil: An Overview of Pra...
GOTOpia 2/2021 "Cloud Native Development Without the Toil: An Overview of Pra...GOTOpia 2/2021 "Cloud Native Development Without the Toil: An Overview of Pra...
GOTOpia 2/2021 "Cloud Native Development Without the Toil: An Overview of Pra...
 
Rehosting apps between k8s clusters and automating deployment using crane c...
Rehosting apps between k8s clusters and automating deployment using crane   c...Rehosting apps between k8s clusters and automating deployment using crane   c...
Rehosting apps between k8s clusters and automating deployment using crane c...
 
A Story of Cultural Change: PayPal's 2 Year Journey to 150,000 Containers wit...
A Story of Cultural Change: PayPal's 2 Year Journey to 150,000 Containers wit...A Story of Cultural Change: PayPal's 2 Year Journey to 150,000 Containers wit...
A Story of Cultural Change: PayPal's 2 Year Journey to 150,000 Containers wit...
 
Developer Productivity Engineering with Gradle
Developer Productivity Engineering with GradleDeveloper Productivity Engineering with Gradle
Developer Productivity Engineering with Gradle
 
Openshift YARN - strata 2014
Openshift YARN - strata 2014Openshift YARN - strata 2014
Openshift YARN - strata 2014
 
Architecting for Continuous Delivery
Architecting for Continuous DeliveryArchitecting for Continuous Delivery
Architecting for Continuous Delivery
 

En vedette

Ростислав Фридман: “Kubernetes как средство управления микросервисами"
Ростислав Фридман: “Kubernetes как средство управления микросервисами"Ростислав Фридман: “Kubernetes как средство управления микросервисами"
Ростислав Фридман: “Kubernetes как средство управления микросервисами"
Provectus
 

En vedette (20)

Bangalore Container Conference - Sponsor Deck
Bangalore Container Conference - Sponsor DeckBangalore Container Conference - Sponsor Deck
Bangalore Container Conference - Sponsor Deck
 
Microservices at scale with docker and kubernetes - AMS JUG 2017
Microservices at scale with docker and kubernetes - AMS JUG 2017Microservices at scale with docker and kubernetes - AMS JUG 2017
Microservices at scale with docker and kubernetes - AMS JUG 2017
 
Monitoring, Logging and Tracing on Kubernetes
Monitoring, Logging and Tracing on KubernetesMonitoring, Logging and Tracing on Kubernetes
Monitoring, Logging and Tracing on Kubernetes
 
RackN DevOps meetup NYC
RackN DevOps meetup NYCRackN DevOps meetup NYC
RackN DevOps meetup NYC
 
Welcome talk for Moscow Kubernetes Meetup 1
Welcome talk for Moscow Kubernetes Meetup 1Welcome talk for Moscow Kubernetes Meetup 1
Welcome talk for Moscow Kubernetes Meetup 1
 
Net core, mssql, container und kubernetes
Net core, mssql, container und kubernetesNet core, mssql, container und kubernetes
Net core, mssql, container und kubernetes
 
Opening: builderscon tokyo 2016
Opening: builderscon tokyo 2016Opening: builderscon tokyo 2016
Opening: builderscon tokyo 2016
 
Mirantis Contributions to Kubernetes Ecosystem
Mirantis Contributions to Kubernetes EcosystemMirantis Contributions to Kubernetes Ecosystem
Mirantis Contributions to Kubernetes Ecosystem
 
Ростислав Фридман: “Kubernetes как средство управления микросервисами"
Ростислав Фридман: “Kubernetes как средство управления микросервисами"Ростислав Фридман: “Kubernetes как средство управления микросервисами"
Ростислав Фридман: “Kubernetes как средство управления микросервисами"
 
Microservices summit talk 1/31
Microservices summit talk   1/31Microservices summit talk   1/31
Microservices summit talk 1/31
 
Docker Containers in Azure
Docker Containers in AzureDocker Containers in Azure
Docker Containers in Azure
 
Deploy your favorite apps on Kubernetes
Deploy your favorite apps on KubernetesDeploy your favorite apps on Kubernetes
Deploy your favorite apps on Kubernetes
 
Kubernetes as Orchestrator for A10 Lightning Controller
Kubernetes as Orchestrator for A10 Lightning ControllerKubernetes as Orchestrator for A10 Lightning Controller
Kubernetes as Orchestrator for A10 Lightning Controller
 
Google Cloud Computing compares GCE, GAE and GKE
Google Cloud Computing compares GCE, GAE and GKEGoogle Cloud Computing compares GCE, GAE and GKE
Google Cloud Computing compares GCE, GAE and GKE
 
Kubernetes API - deep dive into the kube-apiserver
Kubernetes API - deep dive into the kube-apiserverKubernetes API - deep dive into the kube-apiserver
Kubernetes API - deep dive into the kube-apiserver
 
Kubernetes - Starting with 1.2
Kubernetes  - Starting with 1.2Kubernetes  - Starting with 1.2
Kubernetes - Starting with 1.2
 
Running Docker in Production - The Good, the Bad and The Ugly
Running Docker in Production - The Good, the Bad and The UglyRunning Docker in Production - The Good, the Bad and The Ugly
Running Docker in Production - The Good, the Bad and The Ugly
 
Introduction to container mangement
Introduction to container mangementIntroduction to container mangement
Introduction to container mangement
 
Idea to Production - with Gitlab and Kubernetes
Idea to Production  - with Gitlab and KubernetesIdea to Production  - with Gitlab and Kubernetes
Idea to Production - with Gitlab and Kubernetes
 
Kubernetes networking in AWS
Kubernetes networking in AWSKubernetes networking in AWS
Kubernetes networking in AWS
 

Similaire à Keeping up with Tech

Furqan ul karim_latest_cv
Furqan ul karim_latest_cvFurqan ul karim_latest_cv
Furqan ul karim_latest_cv
Furqan Ul Karim
 
324587-project-setting-guidance.pdf
324587-project-setting-guidance.pdf324587-project-setting-guidance.pdf
324587-project-setting-guidance.pdf
MrRZapata
 
Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4
Marvin Heery
 

Similaire à Keeping up with Tech (20)

Balancing PM & Software Development Practices by Splunk Sr PM
Balancing PM & Software Development Practices by Splunk Sr PMBalancing PM & Software Development Practices by Splunk Sr PM
Balancing PM & Software Development Practices by Splunk Sr PM
 
Initiating and Sustaining Design Systems for the Enterprise
Initiating and Sustaining Design Systems for the EnterpriseInitiating and Sustaining Design Systems for the Enterprise
Initiating and Sustaining Design Systems for the Enterprise
 
Ready for Fast Data: How Lightbend Enables Teams To Build Real-Time, Streamin...
Ready for Fast Data: How Lightbend Enables Teams To Build Real-Time, Streamin...Ready for Fast Data: How Lightbend Enables Teams To Build Real-Time, Streamin...
Ready for Fast Data: How Lightbend Enables Teams To Build Real-Time, Streamin...
 
Profile_YogeshFegade
Profile_YogeshFegadeProfile_YogeshFegade
Profile_YogeshFegade
 
Furqan ul karim_latest_cv
Furqan ul karim_latest_cvFurqan ul karim_latest_cv
Furqan ul karim_latest_cv
 
Managing software projects & teams effectively
Managing software projects & teams effectivelyManaging software projects & teams effectively
Managing software projects & teams effectively
 
Agile paris 2022 sharing
Agile paris 2022   sharingAgile paris 2022   sharing
Agile paris 2022 sharing
 
DevOpsDays Houston 2019 - Sagar Karmarkar - Organic DevOps - DevOps from with...
DevOpsDays Houston 2019 - Sagar Karmarkar - Organic DevOps - DevOps from with...DevOpsDays Houston 2019 - Sagar Karmarkar - Organic DevOps - DevOps from with...
DevOpsDays Houston 2019 - Sagar Karmarkar - Organic DevOps - DevOps from with...
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Yogesh_Fegade_Profile
Yogesh_Fegade_ProfileYogesh_Fegade_Profile
Yogesh_Fegade_Profile
 
324587-project-setting-guidance.pdf
324587-project-setting-guidance.pdf324587-project-setting-guidance.pdf
324587-project-setting-guidance.pdf
 
Software Modernization for the Digital Economy
Software Modernization for the Digital EconomySoftware Modernization for the Digital Economy
Software Modernization for the Digital Economy
 
Full Stack Developer Classes in Chandigarh.pptx
Full Stack Developer Classes in Chandigarh.pptxFull Stack Developer Classes in Chandigarh.pptx
Full Stack Developer Classes in Chandigarh.pptx
 
How to Decide Technology Stack for Your Next Software Development Project?
How to Decide Technology Stack for Your Next Software Development Project?How to Decide Technology Stack for Your Next Software Development Project?
How to Decide Technology Stack for Your Next Software Development Project?
 
General presentation - Bitcraft
General presentation - Bitcraft General presentation - Bitcraft
General presentation - Bitcraft
 
How to Hire Full Stack Developers: A Guide
How to Hire Full Stack Developers: A GuideHow to Hire Full Stack Developers: A Guide
How to Hire Full Stack Developers: A Guide
 
Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4
 
Portfolio
PortfolioPortfolio
Portfolio
 
Sap abap course
Sap abap course Sap abap course
Sap abap course
 
Sap abap course content
Sap abap course contentSap abap course content
Sap abap course content
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Dernier (20)

DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

Keeping up with Tech

  • 1. Staying current in a changing marketplace Denver Code Club Meetup Craig Martin, Vice President of Engineering January 19th, 2017
  • 2. Agenda ● Changing market ● Approach and Adopting a new technology ● Staying Current ● Evaluation Process ● How Kenzan does it: ○ Tech Radar ○ Skills Matrix / Badge Board ○ Internal Projects ○ Open Source Projects
  • 3. 2003 SOAP Webservices becomes popular Technology changes really fast. 2005 Google Maps & YouTube 2006 Initial AWS Cloud offerings 2008 RESTful Webservices take hold 2013 March ● React released ● Initial Docker release 2011 ● Google Cloud Platform ● January - Kafka ● December - Hadoop 2010 ● February - Azure ● October - Angular 2014 ● May - Apache Spark ● June - Initial Kubernetes release ● October - HTML 5 2015 ● January - Swagger 2016 ● January - Serverless architectures ● September - Angular 2 ● July - Apache Mesos
  • 4. Approaching a new technology To keep in mind!: Perseverance will pay off You never stop learning Different technologies and starting points have different kinds of learning curves
  • 6. How to stay current? In a changing market In Technology, standing still means falling behind • Two main perspectives Individual or Company • Correct attitude Embrace the change Create a culture or an attitude of looking forward • Be critical For every good product there is a “Clippy” • Apply in real world situations • Evaluate the alternatives Is there a market need? Why is it better? • Review from many perspectives (not just technology)
  • 7. Technology evaluation ● Updating/modernizing existing legacy applications ● Comparing “old” vs “new” technologies ● Evaluating emerging technologies COMMON DRIVERS COMMON PITFALLS ● Resume driven development ● Treating technology stacks different than architectural patterns ● Lack of consistency in approach ● Stuck in the theoretical - Start Building!
  • 8. Modernizing existing application Common Use Case: Company has an existing legacy application that needs a major feature overhaul or needs an upgrade. 1. Start with an honest evaluation of existing application stack a. What does it do well vs not so well (e.g. scalability, modularity, releases, extensibility, support, etc) b. How much of the challenges is related to the technology? c. Maybe code/arch cleanup would be better? d. Understand the architectural patterns 2. Determine list of potential technology replacements 3. Use the Pros and Cons as a template for each technology a. Evaluate each pro and con against the potential technology b. Suitability fit with development team(s) 4. Evaluate the “activity” of the the technology a. Lots of committers? b. Open Source vs Closed Source c. Release Cadence d. Available tooling and Plugins 5. Overall technology evaluation a. Ease of use, code management, cost, complexity
  • 9. Comparing Old vs New Common Use Case: Company has a new tool or feature that needs to be built and we want to choose the right technology. Objective evaluation of pros and cons: ● Differences in paradigm or architecture approach ● Features and gaps in tech ● Performance ● Extensibility ● Activity & popularity = resources and support Compare costs of each technology ● Open source technologies vs licensed technologies ● Maintenance costs are expensive and will most likely rise Team Dynamics ● Skills of team ● Code handoffs Likelihood of longevity ● Judge by popularity over time ● Extensibility ● Voodoo Magic
  • 10. Evaluating Emerging Technologies Common Use Cases: ● Helping clients to determine the correct strategic direction for their organization. ● Determining the technologies in market verticals and help establish the direction of the organization. Identify POC to get hands on with technology ● Focus on risk areas ● Establish checkpoints along the way Understand and the market or client needs: ● Problems that need solving (industry gaps) ● Challenges unique to the vertical ● Current competencies in the organization or marketplace ● Competition evaluation Builds on the technology evaluations from above: ● Pros and Cons ● Costs ● Team Dynamics ● Longevity Develop adoption plan and implementation strategy ● Switching over legacy apps ● Training Staff ● Rollout strategy
  • 11. WHO? Find the right people! WHAT? The training! WHEN? Project! ● Not all people love picking up new technologies ● Prove out critical challenges ● Dedicate a percentage of the week/month to learn the new technology ● Leverage online resources and provide training when needed ● BUILD, BUILD BUILD! ● Join meetups and conferences in town ● Present a tech talk or teach to others ● Start building immediately ● Don’t be afraid to jump “too early” into the project ● Working on it is part of the learning curve, and will shorten the productivity dip time Tips on How
  • 12. How Kenzan does it.... • Tech Radar • Skills Matrix • Badge Board • Building Skills • Internal Projects • Open Source Projects
  • 13. Tech Radar Subject Matter Quadrants ● Languages and Frameworks ● Tools ● Techniques ● Platforms Evaluation Adopt (2 rings) Technologies in use, or recommended to clients. Trial Technologies should be used on internal projects or open source projects to gain practical experience. Evaluation Technologies worth putting effort toward investigating, pursued to generate a proof-of-concept. Hold Technologies not yet ready, out of date, or too risky to be used
  • 14. Tech Radar Maintenance Tech Radar Maintenance Starts with the right people: ● Attitude and desire is importance ● Honest and critical (no ego’s) Routine meetings with tech leadership ● Monitor and discuss new technologies ● Discuss P.O.C. for emerging technologies ● Monitor existing legacy technologies ● Evaluate in progress P.O.C’s Author competencies for relevant emerging technologies Routine “checkpoints” for projects and people ● Project completion ● employee project rolloff ● Manager & employee checkins
  • 15. Skills matrix and competencies ● Skills matrix is the sum of all the skills that we have ● Each skill has a set of competencies ● Typically broken into 3 different levels (Beginner, Intermediate, Expert) ● Goal is to have the “Kenzan Standards” of competencies ● Will be established once it is added to the tech radar ○ Only filled out when it becomes relevant
  • 16. badge board The goal of the board is to have an accurate representation of all the skills within Kenzan. Functions: ● Provide the resourcing team a mechanism to determine which employees are best suited for a project ● Provide tenured employees a set of skills to work towards and competencies to meet those skills ● Set and track the "technology stack" within Kenzan's organization It’s expected and encouraged that the badge board will evolve over time. This will happen both from a tech stack perspective and from a employee skills perspective.
  • 17. Open Source Projects Open Source and Internal projects are strongly tied to Tech Radar and Badge Board Open Source: ● Kenzan benefits a lot of the open source community ● Open source projects are Kenzan’s contribution to the community ● Usually created as Proof-Of-Concepts and experimentation with emerging technologies spotted in the Tech Radar. Internal Projects: ● Internal projects are for internal Kenzan IP ● They are created by “bench” employees ● Opportunity to pick up new technologies and earn badges Examples of Open Source Projects: ● MSL (Million Song Library) -> Angular + Java + Netflix + Cassandra: https://github.com/kenzanlabs/million-song-library ● Keystone (Front End Build Tool) -> Node + Gulp + Yeoman: https://github.com/kenzanlabs/keystone Internal Projects: ● Kenzan.IO -> React.JS, Wordpress API: http://kenzan.io ● Tech Radar -> React.JS + Redux + Node
  • 18. Want to learn more? Follow us! @kenzanmedia www.linkedin.com/company/kenzan-media techblog.kenzan.com www.facebook.com/kenzanmedia/