SlideShare ist ein Scribd-Unternehmen logo
1 von 22
Daniel S. Haischt – Advisory Software Development Engineer
        08 03 2011




T-Shaped Professional – What's my T?
Or: What distinguishes myself from being a pure generalist?




                                                                     © 2009 IBM Corporation
T-Shaped Professional – What's my T?


Agenda



    ■   Motivation
    ■   Empirical Study – My Own Professional History
        – Deep-dive 1999 – Current: Java Enterprise Edition
        – Deep-dive 2000: Portal Technologies
        – Deep-dive 2003/2004: Weblogs & Social Networking
        – Deep-dive 2004: Centralized Mail Signing & Encryption
        – Deep-dive 2005: Zero Network Configuration
        – Deep-dive 2005/2006: Security Perimeter Appliances
        – Deep-dive 2007/2008: Compound, Personalized Document Composition
        – Deep-dive 2009/2010: SAP Metadata Extraction and ETL-based Cleansing
    ■   Exemplary Mockup of my Own T


2                                                                      © 2011 Daniel S. Haischt
T-Shaped Professional – What's my T?


Motivation
    ■   To overcome my own, possible blind spots
    ■   To get feedback from peers on how they would define
          my own distinct T
    ■   To actively identify my own distinct T according to an
          article written by Prof. Dr. Elisabeth Heinemann.




German: http://www.business-wissen.de/personalmanagement/t-shaped-professional-die-vorteile-von-spezialist-und-generalist-vereint/?ref=fb
English: http://www.ceri.msu.edu/t-shaped-professionals/

3                                                                                                                                           © 2011 Daniel S. Haischt
Empirical Study – My Own Professional History


Deep-dive 1999 – Current: Java Enterprise Edition

    ■   Motivation
              –   Distributed software systems shouldn't be based on proprietary, self-crafted technologies
              –   Instead use an implementation of a defined set of open standards and best practices
              –   The only open standard available at that time was Java EE
              –   The only way to learn such a open standard was creating it's implementation
              –   The only way to create such an implementation was participating in an OSS project

    ■   Accomplishments
              – Apache OpenEJB (OEJB) Committer
              – Completely re-created the build system after joining the project cause it was error-prone an
                   proprietary. Introduced Apache Ant as a replacement
              – Ported the base OEJB infrastructure to a mobile platform (Java ME – CDC)
              – Started to implement a Message Driven Bean container based on CDC
              – Implemented Eclipse-tooling in support of creating OEJB-based apps
              – Implemented Web Service Security support

    ■   Retrospective
              – Java EE is complex and heavy-weight
              – This might change by supporting OSGi in app servers and profiles aka modularity as
                   specified by the Java EE version 6 spec
              – Java EE or a reduced subset needs to be available on any platform to make Java EE apps
                   portable
              – Java EE can be lightweight and thus can be run any platform
              – Security needs to be always built-into an app server if it should be run in enterprises
4                                                                                                 © 2011 Daniel S. Haischt
Empirical Study – My Own Professional History


Deep-dive 2000: Portal Technologies

    ■   Motivation
              – Enterprise web sites need to be based on open standards and need to be composed of re-
                   usable, modularized assets

    ■   Accomplishments
              –   Started to dig into Apache Jetspeed long before the Java portlet spec did exist
              –   Published five articles focused on portal implementations and related technologies
              –   Used the Liferay enterprise open source portal in several student projects
              –   Used jBPM (now JBoss) to stage business processes into portal apps

    ■   Retrospective
              – Complex web sites to be deployed into enterprises need to be modularized and be based on
                   a lightweight content management system
              – Content must not only be accessible through the browser → Usage of WebDAV or JCR
              – Where necessary complex workflows or business processes associated with a portal app
                   need to be staged and implemented using a business process engine




5                                                                                                 © 2011 Daniel S. Haischt
Empirical Study – My Own Professional History


Deep-dive 2003/2004: Weblogs & Social Networking



    ■   Motivation
              – I don't want to fiddle with things such as HTML-programming if I want to take
                    chronological notes about what I did multiple times a week or even multiple
                    times a day just to publish them online
    ■   Accomplishments
              – Extensive evaluation and customization of almost every open source blogging
                   engine such as WordPress and Movable Type
              – Implementation of several WordPress plug-ins such as BlogTimes and a Plazes
                   geo-tagging plug-in
              – Extensive researches on blogging-related open standards such as RDF, Atom,
                   FOAF etc.
    ■   Retrospective
              – A blog only becomes valuable to others if it not only provides content but
                   metadata too that allows search engines and meta-blogging systems to lookup
                   and mashup related information
              – You need to build an eco-system and a community around your blog to make it
                   valuable and well recognized

6                                                                                      © 2011 Daniel S. Haischt
Empirical Study – My Own Professional History


Deep-dive 2004: Centralized Mail Signing & Encryption


    ■   Motivation
              – As a geek I always had multiple computers and a network at home to educate myself on both
                    computers and networking
              – Signing/Encrypting mail messages has always been cumbersome cause I had to distribute
                    my PGP-keys to every computer at home
              – Instead I wanted mail messages to be transparently signed/encrypted by the mail server itself
                    instead of using the mail client for such a purpose

    ■   Accomplishments
              – Setup of a complete mail server infrastructure accompanied by an LDAP-directory and GNU
                   Anubis to sign/encrypt mail message while processing them
              – Setup of a complete public key infrastructure based on OpenCA to not only manage SSL-
                   keys but PGP keys too
              – Multiple bug reports and C-based patch submissions for GNU Anubis
              – Did a research on competitive/commercial solutions and at that time I could barely find one
              – Published two articles covering GNU Anubis

    ■   Retrospective
              – As an end-user I don't want to care about stuff such as how to create PGP-keys or SSL-certs
                    for the single purpose of signing/encrypting mail messages
              – Instead mail security has to be carried out by the server and needs to be transparent to users
              – Mail servers expose a security risk and thus need to be secured/hardened if they host public
                    & private keys
7                                                                                                © 2011 Daniel S. Haischt
Empirical Study – My Own Professional History


Deep-dive 2005: Zero Network Configuration



    ■   Motivation
              – Over time during the course of my many hobbyist researches, I did setup a very complex
                    system of network devices and servers at my home network, both stationary & mobil.
              – Managing them became cumbersome cause you have to remember URLs and IP-addresses
                    and provided services all the time
              – Instead I wanted each device to announce its existence and its services provided to the world

    ■   Accomplishments
              – Extensive researches on Zeroconf, UPnP and later on firewall piercing based on UPnP
              – Implementation of a C-based module for wzdftpd to announce FTP services and service data
                   to the network
              – Several implementations of the Avahi client API for Gnome, PostgreSQL, OpenLDAP and
                   other network servers
              – Published two articles covering Avahi

    ■   Retrospective
              – Home network configuration is way to complex where it shouldn't be to end-users
              – Home network devices and servers can configure themselves
              – Zero configuration may become more complex and non-trivial if you need to traverse
                   boundaries such as a router/firewall or if you want to register devices and their services
                   with a central DNS server on the internet

8                                                                                                 © 2011 Daniel S. Haischt
Empirical Study – My Own Professional History


Deep-dive 2005/2006: Security Perimeter Appliances
    ■   Motivation
               – Over time commercial routers/firewalls I've been using at home showed that they are buggy, non-extensible
                     and that bugs can't be fixed easily because they need to be fixed upstream by the manufacturer
               – I wanted to operate my own, self-crafted router/firewall appliances over which I would have full control
               – I wanted such a router/firewall to be extensible and host network security related services such as an anti
                     SPAM-engine or an intrusion detection/prevention system
               – I wanted to make extensive use of VPN
               – Customers did request a self-contained security perimeter appliance

    ■   Accomplishments
               – Extensive contributions to m0n0wall, pfSense and FreeNAS
               – Established a test lab consisting of several WRAP, ALIX, Soekris and HP ProLiant appliances to stage OS
                     images to platform specific test environments
               – The security perimeter operating system image could be generated and staged onto each of those devices
               – Completely re-wrote FreeNAS to be installed as a pfSense add-on
               – Started researching how SSL-traffic or statistical SPAM-analysis can be accelerated on the network level
                     either using proprietary accelerators or accelerators implemented in FPGA
               – Started researching how Opcode such as Java or PHP Opcode can be accelerated using proprietary
                     accelerators or accelerators implemented in FPGA
               – Started researching how to virtualize the hardware-based security perimeter solution using Xen or VMware

    ■   Retrospective
               – Implementing the just described security perimeter as an appliance within a single year is a 14h a day, 7 days
                     a week job and requires much more than passion and dedication
               – Implementing the just described security perimeter as an appliance was cost-intensive because of the
                     necessary hardware required to setup a test lab
               – This endeavor wouldn't have been impossible without a strong open source community and their help
               – I had to heavily switch between subjects and even had to learn technologies I never used before such as
                     hardware acceleration based on FPGA
9
               – Acceleration and even implementing a silicon-based JVM can be done using FPGA                  © 2011 Daniel S. Haischt
Empirical Study – My Own Professional History


Deep-dive 2007/2008: Compound, Personalized Document Composition
 ■   Motivation
            – Based on my past projects, my passion and dedication I learned that I could have a real impact on todays
                   internet technologies if I would team-up with someone else sharing the same goals and visions
            – In 2007 I felt that I should join a large enterprise to be able to influence the emergence of today’s internet
                   technologies with all the passion I demonstrated during my past projects
            – I as well learned if I would like to continue on tackling complex and cost-intensive projects, I really shouldn't
                   do this as a one-man-show
            – I wanted to re-use the extensive document composition and generation knowledge (based on DocBook) I
                   gained in the past to be able to apply it to different domains

 ■   Accomplishments
            – Completely re-factored the middle-tier of a compound, personalized document composition system to adhere
                  to the Java 2 EE standard
            – Completely inspected and modified the code base of the compound, personalized document composition
                  system to not violate any open source constraint and to be OSS license compliant
            – Successfully went through an OSS governance process to be able to use OSS components as part of the
                  software system
            – Evaluated several XML-based document formats and proposed to use Lotus Symphony to implement an
                  XML-based document composition system
            – Evaluated several workflow and business process engines and proposed to use ILOG to be able to annotate
                  conditional semantics to personalized documents
            – Completely re-designed the proprietary web-based frontend to not only use open, semi-standard
                  technologies such as AJAX but as well to not depend on browser-specific technologies or capabilities
                  such as the Microsoft HTML-editing control or Internet Explorer specific XML-processing on the client
                  side

 ■   Retrospective
            – Such a complex system being spread over many tiers and implementing a large amount of technologies can
                 only stay competitive and vital if you solely rely on open standards, agile software engineering
                 methodologies and a highly skilled and motivated team
10                                                                                                               © 2011 Daniel S. Haischt
Empirical Study – My Own Professional History


Deep-dive 2009/2010: SAP Metadata Extraction and ETL-based Cleansing
 ■   Motivation
            – I wanted to broaden & resurrect my previously, in the past gained SAP skills
            – I wanted to be part of a team that engineers a complete new solution from zero to its final, productized
                  implementation

 ■   Accomplishments
            – Implemented several Eclipse-based clients to extract, model and manipulate metadata from an SAP system
            – Implemented several installers to provision the Eclipse-based client onto client systems
            – Completely inspected and modified the code base of the system to not violate any open source constraint nor
                  3rd-party intellectual property and to be OSS license compliant
            – Successfully went through an OSS governance process to be able to use OSS components as part of the
                  software system
            – Completely implemented a continuous integration system that allows to generate an installable image of the
                  system at any time at your finger tips

 ■   Retrospective
            – To be competitive you not only need to protect your own IP, you as well need to treat the IP of others
                  appropriately and don't violate it
            – Treating IP appropriately can't be enforced onto employees. Instead you have to have a coach per team that
                  is able to constantly coach the team on IP and OSS related matters
            – The OSS and IP related governance process should be transparently built into development tools as much as
                  possible to be able to identify IP and license violations ahead of time long before releasing a product
            – A product that can't be installed very early in the product development cycle by QA or the customer is worth
                  nothing
            – The source code associated with a product already rolled out should always be restorable at any time to be
                  able to fix bugs based on such a source code snapshot
            – You should be able to produce a stable, installable build at any time
            – Implementing a CI-system requires resources and time and thus should be part of the project schedule

11                                                                                                            © 2011 Daniel S. Haischt
Exemplary Mockup of my Own T


Exemplary Mockup of my Own T




12                                  © 2011 Daniel S. Haischt
Exemplary Mockup of my Own T


Exemplary Mockup of my Own T – Radar Chart

                                               PM


                                                    10
                                SW-Eng                   Indystry Knowledge




                                                    5




                Secure SW-Eng                       0              Inuition & Empathy   That's Me




                                    Java                 Open Source




                                           Tech-Junkie




13                                                                                            © 2011 Daniel S. Haischt
Exemplary Mockup of my Own T – Project Management



             ■   Solid understanding of traditional & agile software release engineering
             ■   Extensive knowledge on productizing solutions based on manufacturing
                    security perimeter appliances as a free lancing software engineer
             ■   Extensive knowledge on intellectual property related governance processes
                    such as those required to identify and govern open source
             ■   Good understanding on timeline and scope management
             ■   Certified Professional Scrum Master
             ■   Potential PMI Agile Certification Candidate
             ■   Good understanding of the Project Management Body of Knowledge
             ■   Question: Would an M.B.A. strengthen my product management &
                   project management skills?




14                                                                                  © 2011 Daniel S. Haischt
Exemplary Mockup of my Own T – SW-Engineering Methodologies



             ■   Solid understanding of traditional & agile software engineering best practices
                     such as unit testing, using mock objects, functional testing etc.
             ■   Solid understanding of requirements definition & management, requirements
                     traceability and requirements test coverage management
             ■   Extensive knowledge of the Unified Modelling Language and its underlying
                    meta model
             ■   Good understanding of internationalization/globalization best practices and its
                   implementation in software systems
             ■   Good understanding of packaging and installer systems to install a product on
                   many platforms
             ■   Extensive knowledge of traditional and modern distributed SCMs
             ■   Solid knowledge of defect management and defect workflows
             ■   Extensive knowledge on how to implement a continuous integration system




15                                                                                  © 2011 Daniel S. Haischt
Exemplary Mockup of my Own T – Secure SW-Engineering



             ■   Solid understanding of asymmetric cryptography to secure communication
                     channels in software systems
             ■   Solid understanding on how to build audibility and data privacy into software
                     systems
             ■   Solid knowledge on how to protect networks from threads such as malware,
                     viruses, DOS attacks and SPAM
             ■   Solid understanding of how to interconnect networks using VPN-based
                     technologies




16                                                                                  © 2011 Daniel S. Haischt
Exemplary Mockup of my Own T – Java Platforms



              ■   Over 10 years of experience in every Java platform including pseudo Java-
                     like platforms
              ■   Solid experience in many Java frameworks, libraries and tools including most
                      Apache projects
              ■   Good understanding on how to interconnect Java with software systems
                    written in other languages using either standardized communication
                    protocols, JNI or similar techniques such as pipes
              ■   Questions: Would a formal Oracle Certified Master (OCM), Java SE6
                    Developer & Oracle Certified Master (OCM), Java EE 5 Enterprise
                    Architect strengthen this key skill?




17                                                                                 © 2011 Daniel S. Haischt
Exemplary Mockup of my Own T – Open Source Affinity



              ■   OSS Committer in four OSS projects including ASF projects
              ■   OSS Contributor in four OSS projects including ASF projects
              ■   OSS User/Consumer/Collaborator of appr. four ASF projects
              ■   OSS software engineering knowledge gained within more than a decade
              ■   My involvement in the apache software foundation gives me strong insights
                     into many OSS governance processes including legal aspects
              ■   My continuous participation in many diverse OSS projects is a proof of my
                     diverse IT technology skills and abilities
              ■   Peers from the OSS community I am working with certify my knowledge in the
                     OSS domain
              ■   Project proposals I did for the ASF prove that I have the potential to see the
                     big picture required to implement new software solutions from scratch
              ■   Everything mentioned before contributes to my reputation as a professional
                     OSS engineer
              ■   Question: Would an academia study strengthen my OSS governance and
                    -legal skills?


18                                                                                    © 2011 Daniel S. Haischt
Exemplary Mockup of my Own T – Intuition, Empathy, Communication Skill



              ■   Bold Statement: My idealist Keirsey temperament and counselor (INFJ) Meyer
                     Briggs type proofs that
              ■   A more modest statement: The feedback I am getting from peers proofs that
              ■   Working on many open source projects for over ten years not only proofs
                    communication and inter-personal skills but proven empathy for working
                    with people from many cultures too




19                                                                                © 2011 Daniel S. Haischt
Exemplary Mockup of my Own T – Industry Knowledge



             ■   Did plenty of projects in the banking, insurance, automotive, construction,
                    information technology and media publishing industry




20                                                                                   © 2011 Daniel S. Haischt
Feedback I got from others so far & what I learned about it
 ■   Most think it's not common to think about yourself and your professional career that way
            – To me it was a creative process writing all this down
            – I think it's a strength to be able to collect data this way and try to assert
                  information from it
            – I think the Why and How I did this says something about my Self-acquaintance
                  and the level of personal agility
 ■   Some asked whether the reason why I did this might be cause I want to get appreciation for
       my accomplishments?
          – I learned doing this increased my personal level of self-appreciation
 ■   Some told me that what I synthesized so far isn't a T-Shape by any means
           – Well accuracy wasn't the intent behind doing this. The intent was rather to learn
                 something about myself
           – I probably think that my SW Engineering skills are much stronger and that I only
                 put it that way cause I didn't want to cripple the T-Shape
 ■   Many were not aware of the diverse projects I already did
           – Guess if I want to change that, I should start talking about my past projects and
               my many hobbyist projects
 ■   Some would not have seen me as a IT technology junkie
          – Most stating this were outside my area of influence
          – Maybe I should finally get myself an iPhone, an iPad or another stylish Gizmo to
21
               change that :)                                                       © 2011 Daniel S. Haischt
T-Shaped Professional – What's my T?


What is my T based on the provided information? Feedback Welcome!




                                            ?
22                                                           © 2011 Daniel S. Haischt

Weitere ähnliche Inhalte

Was ist angesagt?

Starting up a cost free library portal for small-funded libraries
Starting up a cost free library portal for small-funded librariesStarting up a cost free library portal for small-funded libraries
Starting up a cost free library portal for small-funded librariesMaria Cecilia Ayson
 
Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...
Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...
Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...Leonardo Flores
 
Activity 11 common online terminologies
Activity 11 common online terminologiesActivity 11 common online terminologies
Activity 11 common online terminologiesLee_Subin
 
Blackhat USA 2011 - Cesar Cerrudo - Easy and quick vulnerability hunting in W...
Blackhat USA 2011 - Cesar Cerrudo - Easy and quick vulnerability hunting in W...Blackhat USA 2011 - Cesar Cerrudo - Easy and quick vulnerability hunting in W...
Blackhat USA 2011 - Cesar Cerrudo - Easy and quick vulnerability hunting in W...Michael Boman
 
Custom Development with Novell Teaming
Custom Development with Novell TeamingCustom Development with Novell Teaming
Custom Development with Novell TeamingNovell
 
Using alfresco share as a corporate intranet
Using alfresco share as a corporate intranetUsing alfresco share as a corporate intranet
Using alfresco share as a corporate intranetAlfresco Software
 

Was ist angesagt? (7)

Starting up a cost free library portal for small-funded libraries
Starting up a cost free library portal for small-funded librariesStarting up a cost free library portal for small-funded libraries
Starting up a cost free library portal for small-funded libraries
 
Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...
Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...
Electronic Publishing 2.0: Reimagining the Publication and Preservation of E ...
 
Activity 11 common online terminologies
Activity 11 common online terminologiesActivity 11 common online terminologies
Activity 11 common online terminologies
 
Blackhat USA 2011 - Cesar Cerrudo - Easy and quick vulnerability hunting in W...
Blackhat USA 2011 - Cesar Cerrudo - Easy and quick vulnerability hunting in W...Blackhat USA 2011 - Cesar Cerrudo - Easy and quick vulnerability hunting in W...
Blackhat USA 2011 - Cesar Cerrudo - Easy and quick vulnerability hunting in W...
 
Custom Development with Novell Teaming
Custom Development with Novell TeamingCustom Development with Novell Teaming
Custom Development with Novell Teaming
 
Using alfresco share as a corporate intranet
Using alfresco share as a corporate intranetUsing alfresco share as a corporate intranet
Using alfresco share as a corporate intranet
 
Java
JavaJava
Java
 

Andere mochten auch

Why it's better to be T shaped...
Why it's better to be T shaped...Why it's better to be T shaped...
Why it's better to be T shaped...Tom Hoyland
 
T shaped people discipline depth 20090828
T shaped people discipline depth 20090828T shaped people discipline depth 20090828
T shaped people discipline depth 20090828ISSIP
 
T shape perspectives 20150819 v2
T shape perspectives 20150819 v2T shape perspectives 20150819 v2
T shape perspectives 20150819 v2ISSIP
 
T shaped people 20130628 v5
T shaped people 20130628 v5T shaped people 20130628 v5
T shaped people 20130628 v5ISSIP
 
Cognitive computing for academics 20170301 v5
Cognitive computing for academics 20170301 v5Cognitive computing for academics 20170301 v5
Cognitive computing for academics 20170301 v5ISSIP
 

Andere mochten auch (8)

Why it's better to be T shaped...
Why it's better to be T shaped...Why it's better to be T shaped...
Why it's better to be T shaped...
 
T shaped people
T shaped peopleT shaped people
T shaped people
 
MyT-Me How T-Shaped Am I?
MyT-Me How T-Shaped Am I?MyT-Me How T-Shaped Am I?
MyT-Me How T-Shaped Am I?
 
T shaped people discipline depth 20090828
T shaped people discipline depth 20090828T shaped people discipline depth 20090828
T shaped people discipline depth 20090828
 
T shape perspectives 20150819 v2
T shape perspectives 20150819 v2T shape perspectives 20150819 v2
T shape perspectives 20150819 v2
 
T shaped people 20130628 v5
T shaped people 20130628 v5T shaped people 20130628 v5
T shaped people 20130628 v5
 
Cognitive computing for academics 20170301 v5
Cognitive computing for academics 20170301 v5Cognitive computing for academics 20170301 v5
Cognitive computing for academics 20170301 v5
 
Agile Leadership
Agile LeadershipAgile Leadership
Agile Leadership
 

Ähnlich wie T-Shaped Professional – What’s my T? or What distinguishes myself from being a pure generalist?

Shannon McFarland OpenStack/Cisco Intro
Shannon McFarland OpenStack/Cisco IntroShannon McFarland OpenStack/Cisco Intro
Shannon McFarland OpenStack/Cisco IntroShannon McFarland
 
Blisstering Drupal Overview
Blisstering Drupal OverviewBlisstering Drupal Overview
Blisstering Drupal OverviewSunit Gala
 
Cloud and agile software projects: Overview and Benefits
Cloud and agile software projects: Overview and BenefitsCloud and agile software projects: Overview and Benefits
Cloud and agile software projects: Overview and BenefitsGuillaume Berche
 
Undine: Turnkey Drupal Development Environments
Undine: Turnkey Drupal Development EnvironmentsUndine: Turnkey Drupal Development Environments
Undine: Turnkey Drupal Development EnvironmentsDavid Watson
 
How to Enable LoB IT to Be Self-Sufficient with Integration
How to Enable LoB IT to Be Self-Sufficient with IntegrationHow to Enable LoB IT to Be Self-Sufficient with Integration
How to Enable LoB IT to Be Self-Sufficient with IntegrationMuleSoft
 
mahendhar_java3_8yearsHadoop1yearexp
mahendhar_java3_8yearsHadoop1yearexpmahendhar_java3_8yearsHadoop1yearexp
mahendhar_java3_8yearsHadoop1yearexpmahendhar e
 
Evaluating iOS Applications
Evaluating iOS ApplicationsEvaluating iOS Applications
Evaluating iOS Applicationsiphonepentest
 
Tran Minh Duc - Certified Hybris Dev
Tran Minh Duc - Certified Hybris DevTran Minh Duc - Certified Hybris Dev
Tran Minh Duc - Certified Hybris DevĐức Hítle
 
William B. Hauck Resume PDF
William B. Hauck Resume PDFWilliam B. Hauck Resume PDF
William B. Hauck Resume PDFBill Hauck
 
Drupal Conference on 28th
Drupal Conference on 28thDrupal Conference on 28th
Drupal Conference on 28thChanHan Hy
 
Feed Herny developer training : crossplatform and HTML5
Feed Herny developer training : crossplatform and  HTML5Feed Herny developer training : crossplatform and  HTML5
Feed Herny developer training : crossplatform and HTML5Mobile Monday Brussels
 
How to build_a_good_project_from_scratch
How to build_a_good_project_from_scratchHow to build_a_good_project_from_scratch
How to build_a_good_project_from_scratchSon Lam
 
The Unbearable Lightness of Ephemeral Processing
The Unbearable Lightness of Ephemeral ProcessingThe Unbearable Lightness of Ephemeral Processing
The Unbearable Lightness of Ephemeral ProcessingDataWorks Summit
 
ECS/Cloud Object Storage - DevOps Day
ECS/Cloud Object Storage - DevOps DayECS/Cloud Object Storage - DevOps Day
ECS/Cloud Object Storage - DevOps DayBob Sokol
 
USG Rock Eagle 2017 - PWP at 1000 Days
USG Rock Eagle 2017 - PWP at 1000 DaysUSG Rock Eagle 2017 - PWP at 1000 Days
USG Rock Eagle 2017 - PWP at 1000 DaysEric Sembrat
 
Week6 office-hours
Week6 office-hoursWeek6 office-hours
Week6 office-hoursRandall Rode
 
William B. Hauck Resume Word
William B. Hauck Resume WordWilliam B. Hauck Resume Word
William B. Hauck Resume WordBill Hauck
 

Ähnlich wie T-Shaped Professional – What’s my T? or What distinguishes myself from being a pure generalist? (20)

Shannon McFarland OpenStack/Cisco Intro
Shannon McFarland OpenStack/Cisco IntroShannon McFarland OpenStack/Cisco Intro
Shannon McFarland OpenStack/Cisco Intro
 
Blisstering Drupal Overview
Blisstering Drupal OverviewBlisstering Drupal Overview
Blisstering Drupal Overview
 
Cloud and agile software projects: Overview and Benefits
Cloud and agile software projects: Overview and BenefitsCloud and agile software projects: Overview and Benefits
Cloud and agile software projects: Overview and Benefits
 
Drupal vs. EPiServer
Drupal vs. EPiServerDrupal vs. EPiServer
Drupal vs. EPiServer
 
Undine: Turnkey Drupal Development Environments
Undine: Turnkey Drupal Development EnvironmentsUndine: Turnkey Drupal Development Environments
Undine: Turnkey Drupal Development Environments
 
How to Enable LoB IT to Be Self-Sufficient with Integration
How to Enable LoB IT to Be Self-Sufficient with IntegrationHow to Enable LoB IT to Be Self-Sufficient with Integration
How to Enable LoB IT to Be Self-Sufficient with Integration
 
mahendhar_java3_8yearsHadoop1yearexp
mahendhar_java3_8yearsHadoop1yearexpmahendhar_java3_8yearsHadoop1yearexp
mahendhar_java3_8yearsHadoop1yearexp
 
Evaluating iOS Applications
Evaluating iOS ApplicationsEvaluating iOS Applications
Evaluating iOS Applications
 
DeepeshRehi
DeepeshRehiDeepeshRehi
DeepeshRehi
 
Tran Minh Duc - Certified Hybris Dev
Tran Minh Duc - Certified Hybris DevTran Minh Duc - Certified Hybris Dev
Tran Minh Duc - Certified Hybris Dev
 
William B. Hauck Resume PDF
William B. Hauck Resume PDFWilliam B. Hauck Resume PDF
William B. Hauck Resume PDF
 
Drupal Conference on 28th
Drupal Conference on 28thDrupal Conference on 28th
Drupal Conference on 28th
 
Feed Herny developer training : crossplatform and HTML5
Feed Herny developer training : crossplatform and  HTML5Feed Herny developer training : crossplatform and  HTML5
Feed Herny developer training : crossplatform and HTML5
 
How to build_a_good_project_from_scratch
How to build_a_good_project_from_scratchHow to build_a_good_project_from_scratch
How to build_a_good_project_from_scratch
 
The Unbearable Lightness of Ephemeral Processing
The Unbearable Lightness of Ephemeral ProcessingThe Unbearable Lightness of Ephemeral Processing
The Unbearable Lightness of Ephemeral Processing
 
ECS/Cloud Object Storage - DevOps Day
ECS/Cloud Object Storage - DevOps DayECS/Cloud Object Storage - DevOps Day
ECS/Cloud Object Storage - DevOps Day
 
USG Rock Eagle 2017 - PWP at 1000 Days
USG Rock Eagle 2017 - PWP at 1000 DaysUSG Rock Eagle 2017 - PWP at 1000 Days
USG Rock Eagle 2017 - PWP at 1000 Days
 
Introduction to Node.js by Vinothini B
Introduction to Node.js by Vinothini BIntroduction to Node.js by Vinothini B
Introduction to Node.js by Vinothini B
 
Week6 office-hours
Week6 office-hoursWeek6 office-hours
Week6 office-hours
 
William B. Hauck Resume Word
William B. Hauck Resume WordWilliam B. Hauck Resume Word
William B. Hauck Resume Word
 

T-Shaped Professional – What’s my T? or What distinguishes myself from being a pure generalist?

  • 1. Daniel S. Haischt – Advisory Software Development Engineer 08 03 2011 T-Shaped Professional – What's my T? Or: What distinguishes myself from being a pure generalist? © 2009 IBM Corporation
  • 2. T-Shaped Professional – What's my T? Agenda ■ Motivation ■ Empirical Study – My Own Professional History – Deep-dive 1999 – Current: Java Enterprise Edition – Deep-dive 2000: Portal Technologies – Deep-dive 2003/2004: Weblogs & Social Networking – Deep-dive 2004: Centralized Mail Signing & Encryption – Deep-dive 2005: Zero Network Configuration – Deep-dive 2005/2006: Security Perimeter Appliances – Deep-dive 2007/2008: Compound, Personalized Document Composition – Deep-dive 2009/2010: SAP Metadata Extraction and ETL-based Cleansing ■ Exemplary Mockup of my Own T 2 © 2011 Daniel S. Haischt
  • 3. T-Shaped Professional – What's my T? Motivation ■ To overcome my own, possible blind spots ■ To get feedback from peers on how they would define my own distinct T ■ To actively identify my own distinct T according to an article written by Prof. Dr. Elisabeth Heinemann. German: http://www.business-wissen.de/personalmanagement/t-shaped-professional-die-vorteile-von-spezialist-und-generalist-vereint/?ref=fb English: http://www.ceri.msu.edu/t-shaped-professionals/ 3 © 2011 Daniel S. Haischt
  • 4. Empirical Study – My Own Professional History Deep-dive 1999 – Current: Java Enterprise Edition ■ Motivation – Distributed software systems shouldn't be based on proprietary, self-crafted technologies – Instead use an implementation of a defined set of open standards and best practices – The only open standard available at that time was Java EE – The only way to learn such a open standard was creating it's implementation – The only way to create such an implementation was participating in an OSS project ■ Accomplishments – Apache OpenEJB (OEJB) Committer – Completely re-created the build system after joining the project cause it was error-prone an proprietary. Introduced Apache Ant as a replacement – Ported the base OEJB infrastructure to a mobile platform (Java ME – CDC) – Started to implement a Message Driven Bean container based on CDC – Implemented Eclipse-tooling in support of creating OEJB-based apps – Implemented Web Service Security support ■ Retrospective – Java EE is complex and heavy-weight – This might change by supporting OSGi in app servers and profiles aka modularity as specified by the Java EE version 6 spec – Java EE or a reduced subset needs to be available on any platform to make Java EE apps portable – Java EE can be lightweight and thus can be run any platform – Security needs to be always built-into an app server if it should be run in enterprises 4 © 2011 Daniel S. Haischt
  • 5. Empirical Study – My Own Professional History Deep-dive 2000: Portal Technologies ■ Motivation – Enterprise web sites need to be based on open standards and need to be composed of re- usable, modularized assets ■ Accomplishments – Started to dig into Apache Jetspeed long before the Java portlet spec did exist – Published five articles focused on portal implementations and related technologies – Used the Liferay enterprise open source portal in several student projects – Used jBPM (now JBoss) to stage business processes into portal apps ■ Retrospective – Complex web sites to be deployed into enterprises need to be modularized and be based on a lightweight content management system – Content must not only be accessible through the browser → Usage of WebDAV or JCR – Where necessary complex workflows or business processes associated with a portal app need to be staged and implemented using a business process engine 5 © 2011 Daniel S. Haischt
  • 6. Empirical Study – My Own Professional History Deep-dive 2003/2004: Weblogs & Social Networking ■ Motivation – I don't want to fiddle with things such as HTML-programming if I want to take chronological notes about what I did multiple times a week or even multiple times a day just to publish them online ■ Accomplishments – Extensive evaluation and customization of almost every open source blogging engine such as WordPress and Movable Type – Implementation of several WordPress plug-ins such as BlogTimes and a Plazes geo-tagging plug-in – Extensive researches on blogging-related open standards such as RDF, Atom, FOAF etc. ■ Retrospective – A blog only becomes valuable to others if it not only provides content but metadata too that allows search engines and meta-blogging systems to lookup and mashup related information – You need to build an eco-system and a community around your blog to make it valuable and well recognized 6 © 2011 Daniel S. Haischt
  • 7. Empirical Study – My Own Professional History Deep-dive 2004: Centralized Mail Signing & Encryption ■ Motivation – As a geek I always had multiple computers and a network at home to educate myself on both computers and networking – Signing/Encrypting mail messages has always been cumbersome cause I had to distribute my PGP-keys to every computer at home – Instead I wanted mail messages to be transparently signed/encrypted by the mail server itself instead of using the mail client for such a purpose ■ Accomplishments – Setup of a complete mail server infrastructure accompanied by an LDAP-directory and GNU Anubis to sign/encrypt mail message while processing them – Setup of a complete public key infrastructure based on OpenCA to not only manage SSL- keys but PGP keys too – Multiple bug reports and C-based patch submissions for GNU Anubis – Did a research on competitive/commercial solutions and at that time I could barely find one – Published two articles covering GNU Anubis ■ Retrospective – As an end-user I don't want to care about stuff such as how to create PGP-keys or SSL-certs for the single purpose of signing/encrypting mail messages – Instead mail security has to be carried out by the server and needs to be transparent to users – Mail servers expose a security risk and thus need to be secured/hardened if they host public & private keys 7 © 2011 Daniel S. Haischt
  • 8. Empirical Study – My Own Professional History Deep-dive 2005: Zero Network Configuration ■ Motivation – Over time during the course of my many hobbyist researches, I did setup a very complex system of network devices and servers at my home network, both stationary & mobil. – Managing them became cumbersome cause you have to remember URLs and IP-addresses and provided services all the time – Instead I wanted each device to announce its existence and its services provided to the world ■ Accomplishments – Extensive researches on Zeroconf, UPnP and later on firewall piercing based on UPnP – Implementation of a C-based module for wzdftpd to announce FTP services and service data to the network – Several implementations of the Avahi client API for Gnome, PostgreSQL, OpenLDAP and other network servers – Published two articles covering Avahi ■ Retrospective – Home network configuration is way to complex where it shouldn't be to end-users – Home network devices and servers can configure themselves – Zero configuration may become more complex and non-trivial if you need to traverse boundaries such as a router/firewall or if you want to register devices and their services with a central DNS server on the internet 8 © 2011 Daniel S. Haischt
  • 9. Empirical Study – My Own Professional History Deep-dive 2005/2006: Security Perimeter Appliances ■ Motivation – Over time commercial routers/firewalls I've been using at home showed that they are buggy, non-extensible and that bugs can't be fixed easily because they need to be fixed upstream by the manufacturer – I wanted to operate my own, self-crafted router/firewall appliances over which I would have full control – I wanted such a router/firewall to be extensible and host network security related services such as an anti SPAM-engine or an intrusion detection/prevention system – I wanted to make extensive use of VPN – Customers did request a self-contained security perimeter appliance ■ Accomplishments – Extensive contributions to m0n0wall, pfSense and FreeNAS – Established a test lab consisting of several WRAP, ALIX, Soekris and HP ProLiant appliances to stage OS images to platform specific test environments – The security perimeter operating system image could be generated and staged onto each of those devices – Completely re-wrote FreeNAS to be installed as a pfSense add-on – Started researching how SSL-traffic or statistical SPAM-analysis can be accelerated on the network level either using proprietary accelerators or accelerators implemented in FPGA – Started researching how Opcode such as Java or PHP Opcode can be accelerated using proprietary accelerators or accelerators implemented in FPGA – Started researching how to virtualize the hardware-based security perimeter solution using Xen or VMware ■ Retrospective – Implementing the just described security perimeter as an appliance within a single year is a 14h a day, 7 days a week job and requires much more than passion and dedication – Implementing the just described security perimeter as an appliance was cost-intensive because of the necessary hardware required to setup a test lab – This endeavor wouldn't have been impossible without a strong open source community and their help – I had to heavily switch between subjects and even had to learn technologies I never used before such as hardware acceleration based on FPGA 9 – Acceleration and even implementing a silicon-based JVM can be done using FPGA © 2011 Daniel S. Haischt
  • 10. Empirical Study – My Own Professional History Deep-dive 2007/2008: Compound, Personalized Document Composition ■ Motivation – Based on my past projects, my passion and dedication I learned that I could have a real impact on todays internet technologies if I would team-up with someone else sharing the same goals and visions – In 2007 I felt that I should join a large enterprise to be able to influence the emergence of today’s internet technologies with all the passion I demonstrated during my past projects – I as well learned if I would like to continue on tackling complex and cost-intensive projects, I really shouldn't do this as a one-man-show – I wanted to re-use the extensive document composition and generation knowledge (based on DocBook) I gained in the past to be able to apply it to different domains ■ Accomplishments – Completely re-factored the middle-tier of a compound, personalized document composition system to adhere to the Java 2 EE standard – Completely inspected and modified the code base of the compound, personalized document composition system to not violate any open source constraint and to be OSS license compliant – Successfully went through an OSS governance process to be able to use OSS components as part of the software system – Evaluated several XML-based document formats and proposed to use Lotus Symphony to implement an XML-based document composition system – Evaluated several workflow and business process engines and proposed to use ILOG to be able to annotate conditional semantics to personalized documents – Completely re-designed the proprietary web-based frontend to not only use open, semi-standard technologies such as AJAX but as well to not depend on browser-specific technologies or capabilities such as the Microsoft HTML-editing control or Internet Explorer specific XML-processing on the client side ■ Retrospective – Such a complex system being spread over many tiers and implementing a large amount of technologies can only stay competitive and vital if you solely rely on open standards, agile software engineering methodologies and a highly skilled and motivated team 10 © 2011 Daniel S. Haischt
  • 11. Empirical Study – My Own Professional History Deep-dive 2009/2010: SAP Metadata Extraction and ETL-based Cleansing ■ Motivation – I wanted to broaden & resurrect my previously, in the past gained SAP skills – I wanted to be part of a team that engineers a complete new solution from zero to its final, productized implementation ■ Accomplishments – Implemented several Eclipse-based clients to extract, model and manipulate metadata from an SAP system – Implemented several installers to provision the Eclipse-based client onto client systems – Completely inspected and modified the code base of the system to not violate any open source constraint nor 3rd-party intellectual property and to be OSS license compliant – Successfully went through an OSS governance process to be able to use OSS components as part of the software system – Completely implemented a continuous integration system that allows to generate an installable image of the system at any time at your finger tips ■ Retrospective – To be competitive you not only need to protect your own IP, you as well need to treat the IP of others appropriately and don't violate it – Treating IP appropriately can't be enforced onto employees. Instead you have to have a coach per team that is able to constantly coach the team on IP and OSS related matters – The OSS and IP related governance process should be transparently built into development tools as much as possible to be able to identify IP and license violations ahead of time long before releasing a product – A product that can't be installed very early in the product development cycle by QA or the customer is worth nothing – The source code associated with a product already rolled out should always be restorable at any time to be able to fix bugs based on such a source code snapshot – You should be able to produce a stable, installable build at any time – Implementing a CI-system requires resources and time and thus should be part of the project schedule 11 © 2011 Daniel S. Haischt
  • 12. Exemplary Mockup of my Own T Exemplary Mockup of my Own T 12 © 2011 Daniel S. Haischt
  • 13. Exemplary Mockup of my Own T Exemplary Mockup of my Own T – Radar Chart PM 10 SW-Eng Indystry Knowledge 5 Secure SW-Eng 0 Inuition & Empathy That's Me Java Open Source Tech-Junkie 13 © 2011 Daniel S. Haischt
  • 14. Exemplary Mockup of my Own T – Project Management ■ Solid understanding of traditional & agile software release engineering ■ Extensive knowledge on productizing solutions based on manufacturing security perimeter appliances as a free lancing software engineer ■ Extensive knowledge on intellectual property related governance processes such as those required to identify and govern open source ■ Good understanding on timeline and scope management ■ Certified Professional Scrum Master ■ Potential PMI Agile Certification Candidate ■ Good understanding of the Project Management Body of Knowledge ■ Question: Would an M.B.A. strengthen my product management & project management skills? 14 © 2011 Daniel S. Haischt
  • 15. Exemplary Mockup of my Own T – SW-Engineering Methodologies ■ Solid understanding of traditional & agile software engineering best practices such as unit testing, using mock objects, functional testing etc. ■ Solid understanding of requirements definition & management, requirements traceability and requirements test coverage management ■ Extensive knowledge of the Unified Modelling Language and its underlying meta model ■ Good understanding of internationalization/globalization best practices and its implementation in software systems ■ Good understanding of packaging and installer systems to install a product on many platforms ■ Extensive knowledge of traditional and modern distributed SCMs ■ Solid knowledge of defect management and defect workflows ■ Extensive knowledge on how to implement a continuous integration system 15 © 2011 Daniel S. Haischt
  • 16. Exemplary Mockup of my Own T – Secure SW-Engineering ■ Solid understanding of asymmetric cryptography to secure communication channels in software systems ■ Solid understanding on how to build audibility and data privacy into software systems ■ Solid knowledge on how to protect networks from threads such as malware, viruses, DOS attacks and SPAM ■ Solid understanding of how to interconnect networks using VPN-based technologies 16 © 2011 Daniel S. Haischt
  • 17. Exemplary Mockup of my Own T – Java Platforms ■ Over 10 years of experience in every Java platform including pseudo Java- like platforms ■ Solid experience in many Java frameworks, libraries and tools including most Apache projects ■ Good understanding on how to interconnect Java with software systems written in other languages using either standardized communication protocols, JNI or similar techniques such as pipes ■ Questions: Would a formal Oracle Certified Master (OCM), Java SE6 Developer & Oracle Certified Master (OCM), Java EE 5 Enterprise Architect strengthen this key skill? 17 © 2011 Daniel S. Haischt
  • 18. Exemplary Mockup of my Own T – Open Source Affinity ■ OSS Committer in four OSS projects including ASF projects ■ OSS Contributor in four OSS projects including ASF projects ■ OSS User/Consumer/Collaborator of appr. four ASF projects ■ OSS software engineering knowledge gained within more than a decade ■ My involvement in the apache software foundation gives me strong insights into many OSS governance processes including legal aspects ■ My continuous participation in many diverse OSS projects is a proof of my diverse IT technology skills and abilities ■ Peers from the OSS community I am working with certify my knowledge in the OSS domain ■ Project proposals I did for the ASF prove that I have the potential to see the big picture required to implement new software solutions from scratch ■ Everything mentioned before contributes to my reputation as a professional OSS engineer ■ Question: Would an academia study strengthen my OSS governance and -legal skills? 18 © 2011 Daniel S. Haischt
  • 19. Exemplary Mockup of my Own T – Intuition, Empathy, Communication Skill ■ Bold Statement: My idealist Keirsey temperament and counselor (INFJ) Meyer Briggs type proofs that ■ A more modest statement: The feedback I am getting from peers proofs that ■ Working on many open source projects for over ten years not only proofs communication and inter-personal skills but proven empathy for working with people from many cultures too 19 © 2011 Daniel S. Haischt
  • 20. Exemplary Mockup of my Own T – Industry Knowledge ■ Did plenty of projects in the banking, insurance, automotive, construction, information technology and media publishing industry 20 © 2011 Daniel S. Haischt
  • 21. Feedback I got from others so far & what I learned about it ■ Most think it's not common to think about yourself and your professional career that way – To me it was a creative process writing all this down – I think it's a strength to be able to collect data this way and try to assert information from it – I think the Why and How I did this says something about my Self-acquaintance and the level of personal agility ■ Some asked whether the reason why I did this might be cause I want to get appreciation for my accomplishments? – I learned doing this increased my personal level of self-appreciation ■ Some told me that what I synthesized so far isn't a T-Shape by any means – Well accuracy wasn't the intent behind doing this. The intent was rather to learn something about myself – I probably think that my SW Engineering skills are much stronger and that I only put it that way cause I didn't want to cripple the T-Shape ■ Many were not aware of the diverse projects I already did – Guess if I want to change that, I should start talking about my past projects and my many hobbyist projects ■ Some would not have seen me as a IT technology junkie – Most stating this were outside my area of influence – Maybe I should finally get myself an iPhone, an iPad or another stylish Gizmo to 21 change that :) © 2011 Daniel S. Haischt
  • 22. T-Shaped Professional – What's my T? What is my T based on the provided information? Feedback Welcome! ? 22 © 2011 Daniel S. Haischt