PERSONAL INFORMATION: Name Karl Johan Lisby · I have also been working in C#/.Net environments,...
Transcript of PERSONAL INFORMATION: Name Karl Johan Lisby · I have also been working in C#/.Net environments,...
Karl Johan Lisby – [email protected] 1 / 14
PERSONAL INFORMATION: Name Karl Johan Lisby
Born 1963
Nationality Danish
E-mail [email protected]
LinkedIn www.linkedin.com/in/karl-johan-lisby-909715
Main Education Master of Science in Electrical Engineering and Software/M.Sc.EE,
Aalborg Universitet (1987)
Thesis: Operations & Management System for Hyperthermia (a type
of cancer treatment in which body tissue is exposed to high
temperatures to damage and kill cancer cells).
Grade: 13 (highest)
Language Danish (mother tongue)
English (fluently both orally and in writing)
SUMMARY: Technical
competencies
30 years experience from numerous different companies and even more
different roles within software development. Always in the forefront of what
current technology can do, i.e. always part of the frontier of the almost
impossible.
I have been working with high-speed C++ software on Linux servers, putting
the CPU and RAM bandwidth to its limits while breaking the world record in
performance of a capture to disk application.
I have also been working in C#/.Net environments, with timing-critical
applications.
I have been into different technologies from networking (from SDH to IP and
Ethernet) to UX (WEB-based as well as Windows and X-Windows).
Personality I have an outstanding ability to:
o distinguish between the realistic and the ideal in finding the right
balance in solving a problem, such as meeting solution requirements
within the available budget
o to lead and motivate a team to meet challenging quality, time, and cost
targets with a leadership style that is inclusive
o see the bigger picture and help the company to define and refine
visions and strategies for company growth, profitability and customer
satisfaction
o think “out of the box” and provide innovative ideas on how to solve
difficult challenges
o connect with people and be open to their ideas, thoughts and concerns
o be productive and positive at all times. I like to be busy and have lots
to do, but I also believe that every day should be fun for both my
colleagues and I as we tackle a high workload together
o multitask and have many balls in the air at the same time without
losing the overview of sometimes complex situations
o remain rational, calm and focused during high-tension situations that
can cause panic for others
o motivate and to acknowledge achievements. My attitude is that my co-
workers’ success is my success too
o make quick decisions if needed, but I prefer to analyze the situation
before making a decision
o take responsibility for the situation and be proactive
o work on a problem until it is solved. I do not give up until the job is
done
Experience I have been working in device manufacturing companies as well as in the
banking industry. Big (up to 500.000 employees) and small (down to 100
employees) organizations.
I have had roles spanning from developer through architecture, project
management, testing and to people management. I have also been developing
processes including agile transformation and DevOps / Continuous Delivery in a
number of enterprises.
I have great experience with project planning and management, as a SCRUM
master, SAFe/AGILE/SCRUM/LEAN/KANBAN coach and also with CMMI and ISO-
Karl Johan Lisby – [email protected] 2 / 14
9001 processes – definition as well as follow-up.
Domain
knowledge
I have knowledge about many domains. Through my career, I have worked
extensively with:
• Telecommunications
• Investment banking
• Wind turbines
• Energy production and distribution
• SCADA systems
• IP networks.
Through my education, I also know something about medical devices as well as
industrial automation.
PROFESSIONAL ROLES: Expert Manager
QA Manager – CMMI and ISO9001
Project Manager
SCRUM Master
Agile Coach
Continuous Delivery Manager
C developer
C++ developer
Tcl/Tk developer
Experienced Architect
Test Manager
Software Developer
DevOps
Python developer
Knowledge Release Manager
Tester
C# developer
WORK EXPERIENCE: 2018 – Independent Consultant
2015 – 2018 Director of Software Development at Napatech A/S
2009 – 2015 Manager and Project Manager at Siemens Wind Power A/S
2005 – 2008 Team Lead and Senior Project Manager at Saxo Bank A/S
1993 – 2005 Developer, Project Manager and Team Lead at Tellabs Danmark A/S
1988 – 1993 Developer and Project Manager at DIAX Telecommunications A/S
1987 – 1988 Draftee Software Developer in the Danish Armed Forces
EDUCATION AND COURSES (the list is not complete):
2016 Kanban (Best Brains)
2016 RedHat Summit in San Francisco
2014 Lean Software Development (Mary Poppendieck and Tom Poppendieck)
2013 CMMI (Siemens)
2012 Software Testing (Siemens)
2011 Managerial Training (Siemens)
2010 Cultural Awareness
2008 NLP Business Practitioner - coaching (Performex HR)
2006 Certified SCRUM Master (Dr. Jeff Sutherland)
2006 Coaching
2005 Managerial training (Saxo Bank)
2005 Kommunikation og samspil (Right Kjaer & Kjaerulf A/S)
2004 Merkonom, Logistics (Handelsskolen Ishøj og Taastrup)
2003 Management Through Values (THINK ABOUT IT)
Karl Johan Lisby – [email protected] 3 / 14
2002 Merkonom, International Trade (Niels Brock / Copenhagen Business
College)
2001 The course series ”Personal Power” (DIEU)
2000 Project Management (Tellabs)
2000 Situational Leadership
1999 Estimation of Software (Delta)
1996 - 1999 Project Management 1, 2 and 4 (DIEU)
1998 Presentation Technique
1997 Brugervenlige Vinduessystemer (Niveau)
1995 Merkonom, Marketing (Holstebro Handelsskole and Vestegnens
Handelsskole)
1993 Software Testing (Elektronikcentralen)
1992 Teaching Techniques (Bang & Olufsen)
1990 Structured Software Development (Jysk Teknologisk)
PROFESSIONAL EXPERIENCE: PROGRAMMING LANGUAGES
Knowledge Javascript
Python
C#
C++14, C++17
Perl
Shell scripting
Experienced Java
SQL
Expect
Expert C++ (classic)
C
Pascal
Modula-2
Tcl/Tk
PROTOCOLS
Knowledge SOAP
RPC
HTTP(S)
Experienced MPLS
IP
Expert SDH
PDH
DCC
OS
Knowledge Windows
Experienced Linux
UNIX
Expert -
Karl Johan Lisby – [email protected] 4 / 14
DEVELOPMENT TOOLS
Knowledge Node.js
Microsoft Active Server Pages .Net (ASP.NET)
Microsoft Foundation Classes (MFC)
HTML5
Experienced Microsoft Windows Presentation Foundation (WPF)
Emacs
Netbeans
Microsoft Visual Studio
Microsoft Team Foundation
Git
Github
Expert CVS
Jira
Jenkins
METHODOLOGY
Knowledge Test methods
Experienced CMMI
ISO9001
DevOps
SAFe
Requirement Management
Requirement Development
Expert Project Management
Cross-cultural leadership
Agile
SCRUM
Lean
Kanban
Continuous Integration - CI
Continuous Delivery – CD
OTHER SKILLS
Knowledge -
Experienced Unified Modeling Language (UML)
Object-oriented analysis and design (OOA/D)
UX
Usability testing
Expert High Availability
High Performance
Security
Embedded
Real-time
Karl Johan Lisby – [email protected] 5 / 14
PROJECTS:
Job Napatech
Challenges Uniting CD, Kanban and making a cultural change:
The search capabilities of the capture-to-disk product had to be radically
redesigned in order to have several searches ongoing simultaneously.
The technical challenge was to improve performance at the same time.
The managerial challenge was to improve the cooperation between testers and
developers, since there were not enough test resources available and since
hand-over from developer to tester (and the other way concerning bug reports)
is waste (in the Lean sense). And waste must be eliminated in order to achieve
efficiency.
Through implementing continuous delivery on top of the already 80%
automated tests and through changing the culture in a direction where all
project participants were equal and not least through introducing an almost
militaristic interpretation of Kanban, all goals were fulfilled.
The main project – re-implementation of the search functionality – involved 18
developers and testers.
Role Project Manager & Agile Coach
Result Shorter cycle time. Less effort wasted on less important things.
Job Napatech
Challenges 40 (50) Gbit/s sustained capture to disk on standard Linux server HW:
The technical challenge was to beat the world record in performance on a
standard Linux server in order to gain access to new customers.
The managerial challenge was that this had to be done while almost all
resources were occupied on developing customer specific features to one of the
biggest existing customers.
By using a single internal developer, an external consultant and a little part of a
tester’s time and most of my personal time to discuss solutions as well as test
strategies etc., we managed to utilize all memory bandwidth and all the
bandwidth of available RAID controllers and in fact get the wanted performance.
Performance test automation was a big part of this project, where I was setting
the requirements and was testing the test as well as the reporting part of the
automation.
Role Project Manager, Test Manager & Architect
Result A world record in performance for capture to disk products.
Job Napatech
Challenges Agile Transformation:
I started out in Napatech by having the challenge of leading the agile
transformation in R&D.
As the first part of this task, I introduced SCRUM in my own team and was the
SCRUM master. It was an immediate success in the sense that it made project
status much more obvious and it made it possible for the project manager to
actually negotiate in due time which features to include in the current project
and which to postpone to subsequent projects.
But SCRUM was not the perfect fit for the team. It needed something more
fluent, which was why I introduced Kanban. After a lot of studying and training
the team, Kanban proved to be the teams’ preferred way to do agile.
Role Agile Coach
Result Better predictability, better planning, more reliable development process.
Karl Johan Lisby – [email protected] 6 / 14
Job Napatech
Challenges CI/CD Implementation:
After an external assessment of the company’s maturity regarding CI/CD, I
hired a developer with the specific responsibility to improve in this area.
I acted as what is best described as a SCRUM product owner in this regard. I.e.
I was prioritizing, doing top-level architecture and setting the requirements.
I was also being the customer/user as well as making smaller adjustments to
the solutions.
Role DevOps Manager
Result Time from last commit to release reduced from 2 months to 2 weeks.
Time from last commit to “all tests done” reduced from 6 weeks to 24 hours.
Job Napatech
Challenges Taking over as architect and SCRUM master:
When I became the manager for the development team responsible for the
capture to disk product, release 1.1 was being released. Version 2.0 was the
first feature add-on release, where I acted as team lead, but not project
manager.
I.e. this was where I got deeper into the architecture and took over the
responsibility for the team and the product.
The challenge with version 2.0 was that the project manager was busy with
defining and executing another project, which was customer-specific. So I acted
as SCRUM master and thus also took much of the project management
internally in the team.
Role Architect and Manager
Result I took over regarding the product and we also got the new release done.
Job Napatech
Challenges Teambuilding and –development:
The team I took over was not a team. Most of the people had been hired
outside of R&D with the task of inventing “some new product”. I.e. their
mindset was to make new stuff without really being market-driven.
And a short while back, these people had been transferred into R&D and almost
the same number of people had been transferred from another product-line with
a quite different culture and mindset.
The challenge was to introduce a common mindset and culture.
Role Manager
Result Better team spirit, better team performance.
Karl Johan Lisby – [email protected] 7 / 14
Job Siemens Wind Power
Challenges User eXperience (UX):
One of the odd members of “my” PMO (see below) was a UX-expert. The reason
for having him in the team and thereby for me to have the overall UX
responsibility was that UX was seen as part of the processes more than part of
the development and that the UX-expert was working together with more than
one project manager at the same time, and therefore it was natural for him to
belong to the same team as the project managers.
And having UX experience from Saxo Bank and Tellabs certainly made it natural
for me.
The biggest project, where I was involved in coordinating the UX-expert and the
rest of the project team was the so-called hand-terminal for the next-generation
turbine control, i.e. the local user interface in the wind turbine.
My role was mainly to make sure that the project on one hand utilized the UX-
expert and his many meetings, requirement collections and demos with the
users and that the UX-expert on the other hand actually lived up to the
deadlines he should. But in doing so, I was also enjoying to actually be part of
the design process.
Role Manager
Result I got good insight into UX processes and the hand terminal got good usability.
Job Siemens Wind Power
Challenges Building and developing a PMO:
When the Q-releases (see below) was running smoothly and I had a system test
team as well as a system feature coordinator working in my team, it was
natural for me to give up being a project manager as well as being a manager
for developers.
Instead I formed a project management office with the additional
responsibilities of owning Q-releases and QA / processes.
The challenge, I succeeded with was to create a team of 10 project managers,
who co-operated in managing, producing and releasing software.
Role Manager
Result Uniform processes for project management. Teamwork in the PMO.
Karl Johan Lisby – [email protected] 8 / 14
Job Siemens Wind Power
Challenges Combining Agile, ISO9001 and CMMI in defining, documenting and
following-up on a complete set of processes for SW R&D:
Siemens Wind Power is ISO9001 certified. But when the certification was
achieved, there was no internal SW R&D. And the certification seemed to have
been forgotten when SW R&D was in-sourced.
In essence, no processes were documented and especially the requirement
processes were very much up to the individual developer.
At the time, SW R&D had been extended with a large number of Indian
colleagues. And Siemens Bangalore is CMMI level 5 certified.
I.e. the challenge was to keep everything agile and if possible make processes
even more agile, while preserving the Danish ISO9001 certification as well as
the Indian CMMI certification.
I was allowed to hire a Danish QA employee as well as make one person from
India join my small QA team. Later we got up to 4 Indian colleagues in the
team.
The work in the QA team spanned from defining and implementing a process for
requirement management and to being a SCRUM product owner for our Jira
setup. Indian colleagues did the actual changes to Jira.
Role QA Manager
Result SW development living up to the ISO certification as well as becoming more
agile.
Karl Johan Lisby – [email protected] 9 / 14
Job Siemens Wind Power
Challenges Defining and implementing a quarterly release cycle and building a
system test team:
After some time in Siemens, it became increasingly clear that something had to
be done about the release cycle. SCADA and turbine control releases were not
synchronized and especially the SCADA releases were very frequent though
always delayed. In addition, it happened more than once that the newest
SCADA system had features that were incompatible to the newest turbine
control release.
I got the task of improving this.
My first step was to define that we only made one release each quarter. And
that was a release train common for all deliveries from SW R&D, i.e. both
SCADA and turbine control. The features that could fit on the train in both
SCADA and turbine control could become part of the release. Other features had
to wait for the next train, i.e. the next quarter.
And then I made a quite extensive description of the phases (from definition,
requirements and through final testing) and lifecycle of what I named Q-
releases and education of the SW R&D department (especially managers and
project managers) as well as all internal customers.
Once I had the common timing and tact working, I got a person appointed to
coordinate feature and user story definition across teams so that we could
ensure that for example the SCADA part of a feature was not forgotten in the
planning phase.
The final stage was that I got permission to found a new team of system
testers. I then hired testers and a test coordinator and got them well introduced
in the workflow in SW R&D.
A little later – initially without my knowledge – another system testing team
with a bigger scope, i.e. testing both SW and HW together was formed. That
was obviously outside of the SW R&D, but nevertheless, it did not make sense
to have to system test teams competing, so they were merged instead and
therefore, I was relieved of this particular part of the responsibility. But I
remained the owner of the Q-releases.
Role QA & Test Manager
Result 100% reliable release schedule. Not a single slip with incompatible releases.
Much improved predictability concerning feature contents of releases.
Job Siemens Wind Power
Challenges Agile transformation:
I and two of my fellow project manager colleagues, who were exactly as newly
hired as I was, decided to introduce SCRUM. Until then, different teams had
been organized in each their own way.
Some teams cooperated through classic waterfall methods (which worked fine).
But some teams did not work together as a team. They got a task assigned
from their manager and when they were done with that task, they were
assigned another task. And my project team consisted of a single developer that
was equally newly hired.
So we started out with the non-teams and organized the work according to
SCRUM.
The well-functioning waterfall teams joined the SCRUM world a year or two
later.
This way, we introduced SCRUM in the entire software department, which
became known as a department on the leading edge of agile development and
associated processes and methods.
Role Agile Coach
Result Agility, team work, shorter cycle times, transparency in status and planning.
Karl Johan Lisby – [email protected] 10 / 14
Job Siemens Wind Power
Challenges Transforming a proof of concept into a product:
I took over a proof of concept that had been made to order by an external
supplier. It was supposed to be a platform that should be easily adaptable to
provide a (thick) UI to present data from wind turbines and to control turbines.
The tool was comprised of a framework and a number of “widgets”. The user
was supposed to have access to set up the UI he or she wished. We dropped
this idea, because the users wanted a finished product and not a thing they first
had to spend time on putting together themselves. So we hard-coded the UI in
terms of which widgets that was on the screen etc.
There was no clear strategy about what the proof of concept should be used for.
Some had the opinion that it should substitute the WEB-based UI of the SCADA
system; some thought it should become the next hand-terminal, i.e. UI to be
used by service personnel inside the wind turbines. It ended up being a remote
tool for the service department, i.e. not used inside the turbine.
There were many challenges:
- Defining the purpose for the product
- Building up a project team with UI, XAML and WPF knowledge
- Stabilizing the software
- Building a test suite
- Building prototypes of what could have become the hand-terminal for
the next-generation turbine control – including several visits to turbines
and to service personnel
- Transferring the end result to colleagues in India for maintenance
releases
Role Architect and Project Manager
Result We got some return of investment in the PoC and the service personnel got an
improved remote interface to turbines.
Job Saxo Bank
Challenges My own transformation into Agile:
Since I was a people manager as well as a project manager, I was not part of
the PMO in Saxo Bank. But even so, I played a big role in introducing SCRUM,
which was new to me at the time.
As all other project managers in Saxo Bank, I became a certified SCRUM master
– having Dr. Jeff Sutherland in person as my teacher.
After getting the certification, I educated my team and transformed myself from
being project manager into being a combination of project manager, SCRUM
master and agile coach, trying to teach the acting product manager (who was
one of the leading traders) to become a SCRUM product owner.
SCRUM helped to shape the projects that followed the initial Saxo Trader II
project and to provide a transparent status of subsequent projects.
Role Agile Coach and SCRUM Master
Result I became a certified SCRUM master with experience.
Karl Johan Lisby – [email protected] 11 / 14
Job Saxo Bank
Challenges Localization:
Saxo Banks customers are worldwide. As a consequence, Saxo Trader II should
be translated to numerous languages (more than 20).
That gave a number of challenges:
- The software had to be designed for localization, i.e. all text strings
visible to the user had to be isolated in resource files, all dialogue boxes
etc. had to be inverted when the user changed language to Hebrew or
Arabic, there had to be room enough for Chinese and Japanese, which is
a pixel or two higher than letters in other languages.
- The logistics of having translated languages put in for every new release
had to be coped with, so that the translation work did not delay
releases.
- I had a lot of work in coordinating between external translators, internal
proof-readers, whose main job was typically to be account managers
and the developers, who seemed to change any text string at the most
inconvenient time
Role Architect
Result Apart from my personal leanings, the Saxo Trader became available in many
languages and the translation and release processes were systematized.
Job Saxo Bank
Challenges Planning and finalizing an unfinished project:
When I joined Saxo Bank, Saxo Trader II was “almost” ready for release. I.e.
there was no knowledge in the project about what it takes to make a product
ready for release.
After analyzing the state of the project, I found that most requirements that I
collected from the banking professionals, who also were the people having the
customer / user contact, were already known, although not documented.
Looking through the code and interviewing the architect and the CTO revealed
no unhealthy design choices, but there were quite a few missing features, such
as the ability to actually trade forex, which is the main business in Saxo Bank.
In short, I was able to plan and estimate the rest of the project to last for 6
more months. And since we fulfilled that plan without further delays, we
finalized the next generation and price-winning Saxo Trader on schedule.
Role Project Manager
Result Launch of Saxo Trader II in time and thereby a continued commercial success
for Saxo Bank.
Karl Johan Lisby – [email protected] 12 / 14
Job Tellabs
Challenges Classic project management and being program owner:
During a number of years, I was managing a team, being project manager for
25 people and being project owner with a cross-functional responsibility for
other project managers.
- Planning and follow-up using Microsoft Project
- Definition and implementation of project and progress metrics
- Performed steering committee meetings providing progress reports, risk
evaluations and other project related information in a structured
manner
- Follow-up on delivery of the product to the first customers including
handling of initial problems
- Total overview of the overall project including product development,
user documentation, course material, marketing material etc.
- Led a cross-functional team of 4-6 project managers and a product
manager, a marketing person, a customer support responsible a course
responsible and a person responsible for user documentation
- Transformed the job from having its main focus on reporting to the
steering committee to a focus on understanding the total project and
knowing the vital details as well as introducing more formal risk
management, change management and simpler metrics
Role Program Owner
Result My routine in using a steering group, reporting to upper management etc.
Really well-managed and well-coordinated projects.
Job Tellabs
Challenges Making complex matters seem simple:
During the many projects with the NM2000 system, many people were on-
boarded. And all these people had to be educated in the quite complex
concepts of SDH.
I devised a allegory in terms of conveyer belts and smaller boxes being packed
into bigger boxes to explain the multiplexing and switching of bit-streams that is
going on inside the SDH equipment.
And I devised a graphical way of representing the network object model in
terms of circles for switching points, circles with a dot for multiplexing and de-
multiplexing, lines and pipes for links and so on.
It all helped very much not only during the on-boarding, but also during the
further development, where it made it much simpler to add Ethernet and MPLS
over SDH.
Role Onboarding Manager / Teacher
Result Much faster onboarding. Common language and understanding in the teams.
Karl Johan Lisby – [email protected] 13 / 14
Job Tellabs
Challenges Disruption – building a proper user interface:
The NM2000 management system was implemented on TeMIP. And in TeMIP,
the user was supposed to be exposed directly to the object model of the items
being managed. That kind of worked for the simpler kinds of equipment, but
even for those, there was a tendency to twist the object models away from
standards and into something that made the UI more usable.
That was clearly a bad idea – especially for the network functions, where we
had to follow the standardized object model, so I proposed a way to build our
own GUI outside of TeMIP.
I started out by prototyping a generic view of the switch within an SDH network
element. And then I got the approval to have myself and one more
implementing that view and then go on with a proper GUI for the network
model and network functions.
The biggest feeling of success came when the users (customers) gave very
positive feedback concerning the usability.
Role Architect, Software Developer & Project Manager
Result A way better and more user-friendly product.
My experience in UI design and implementation.
Job Tellabs
Challenges Becoming a UNIX guru as well as a proper project manager:
There were numerous projects where the network management functionality
was gradually being implemented in the NM2000 system (see below).
During that time, I had various roles starting as an architect and gradually
becoming more the manager and project manager.
During the time, I picked up a lot of knowledge both technically and project
management-wise:
Technically:
- SDH
- OOA/OOD
- C and C++
- UNIX
- TeMIP
- Tcl
- SQL (Oracle)
Project Management
- Microsoft Project
- Several Project Management courses and educations
- Visualizing the plan – I had a giant Gantt chart on the wall, where
progress was made visible for the entire team using colored pens and a
piece of sewing thread (to mark the date).
The network functions were implemented within the TeMIP framework, but with
some added architectural components, such as a Tcl interface (my idea) that
made it easy to unify the interface towards different kinds of network
equipment, which had different interfaces in terms of TeMIP access modules.
At the heart of the network functions was an Oracle SQL database, where the
network topology as well as all the traffic paths and associated metadata was
stored.
Role Architect and Project Manager
Result I became a routined project manager, UNIX guru, C++ developer, object
oriented and so on and so forth.
Karl Johan Lisby – [email protected] 14 / 14
Job Tellabs
Challenges Definition and ITU-T standardization of a model and data structures for
an SDH network:
One of the basic ideas with the NM2000 management system was to introduce
centralized management of the SDH network. I.e. to enable paths (bit-streams)
to be created across the network and to monitor these.
The first main architectural tasks, which I got to lead was to define an object
model for the network and the traffic within the network.
This work was done both internally, through discussions with customers and
through standardization work, where I participated in several standardization
conferences.
We had to move faster than ITU-T, and we had to implement the object model
in TeMIP, so we took a few liberties and defined a complete model long before it
was standardized.
And then the work of implementing the network functions could commence.
Role Chief Architect
Result My experience in standardization work.
A well-defined and well understood object model for SDH (and later
MPLS/Ethernet) networks.
Job Tellabs
Challenges My base as a software developer:
I started out as a software developer implementing a TeMIP Functional Module
to enable backup and restore of the configuration of a network element, i.e. a
piece of SDH transmission equipment.
The module was part of the SDH management system, which was implemented
on one or more UNIX servers.
The management system and all its modules were written in C.
Role Software Developer
Result Great routine in software development.
Job DIAX
Challenges I started as a software developer and became a combination of developer,
project manager, delivery manager and team lead without personnel
responsibility.
Role Software Developer and Project Manager
Result Great routine in software development.