13
Polyglot engineering and our learnings…

Polyglot engineering

Embed Size (px)

Citation preview

Page 1: Polyglot engineering

Polyglot engineeringand our learnings…

Page 2: Polyglot engineering

Klaus SalchnerVP Engineering

https://ca.linkedin.com/in/ksalchner

https://twitter.com/ksalchner

https://twitter.com/BDCareers

Page 3: Polyglot engineering

3

Polyglot / PolyglotismThe ability to master, or the state of having mastered, multiple (human) languages. This comes with a list of abilities / characteristics.

Polyglot engineerAn engineer who has mastered several software platforms / frameworks. Meaning built multiple applications on it, or has several years of experience on it

Polyglot engineering / architecture The practice of leveraging several software platforms / frameworks to built your (cloud) platform. This requires engineering practices which a decade ago were not yet ready for prime time

What is polyglot engineering?

Page 4: Polyglot engineering

4

Apply best practices from eachEach platform has its own set of best practices. Many can be applied to other platforms as well

Demonstrated the ability to rapidly learnEngineers who have worked on 2-3 platforms for a reasonable time with reasonable experience will have the ability to learn new frameworks and technologies rapidly. The core engineering skills matter!

Can more broadly work across your platformThere are generalists and specialists. You need reasonable depth of knowledge but the ability to work on multiple areas of your platform combined with ability to rapidly learn are the sweet-spot in today’s rapidly changing tech world

Why polyglot engineers?

Page 5: Polyglot engineering

5

Micro-servicesSmall independent services, micro-services, with Hypermedia API’s as your access point. It enables you to choose different platforms to run each on

Clear separation of layersHypermedia API’s as your glue between the presentation tier, middle tier and your various applications. Each can run on its own optimal platform / stack

Polyglot persistenceEach micro-service has its own optimal data store. So move away from a monolithic data store. Each micro-service can optimize for its use – relational data store, document based data store or even an S3 file bucket.

What are your enablersfor polyglot engineering?

Page 6: Polyglot engineering

6What are your enablersfor polyglot engineering?

Page 7: Polyglot engineering

7

Standardization was the pastIn the past most tech companies strived towards standardization to reduce operational cost. As more and more runs in the cloud this becomes less relevant.

Leverage the cloudToday we leverage more and more existing cloud services to solve particular problems. And its irrelevant whether they run on Amazon, Microsoft Azure, Google Cloud or custom infrastructure. The standards like Hypermedia API, Json, etc. make it seamless to interact.

Micro-servicesBy using a micro-service architecture the same applies within your platform. Any of the big cloud providers can run most of today’s development platforms. But, yes you loose some capabilities.

Polyglot infrastructure

Page 8: Polyglot engineering

8

Exercise One (3 min)Work with your neighbour and discuss how polyglotism is used in your organization. If you don’t use it yet, then discuss potential ways to introduce it.

Share experiences and hurdles...

Exercise Two (3 min)Now turn around to your other neighbour and share challenges / hurdles this has introduced for you. Again if you don’t use it yet, discuss potential challenges with it.

Page 9: Polyglot engineering

9Polyglot talk by ThoughtWorksJuly 2015 by Scott Shaw and James Gregory

Page 10: Polyglot engineering

10

My LinkedIn blog postshttps://www.linkedin.com/pulse/polyglot-engineering-engineers-klaus-salchner

Polyglot Persistence by Martin Fowlerhttp://martinfowler.com/bliki/PolyglotPersistence.html

Polyglot architecture by AppNetahttps://www.appneta.com/blog/polyglot-architectures

Some more reading

Page 12: Polyglot engineering

12

If you don’t use polyglotism yetDiscuss with your leaders the value of polyglot engineering / architecture and how you can start to experiment with it

Call for action

If you already practice polyglotism thenDiscuss how you can accelerate the adoption of polyglotism and how you can make it more efficient for your team

Page 13: Polyglot engineering

Q&A