software modernization for the digital economy

38
WORKING SESSION: RECRUITMENT BEST PRACTICES MAY 2014 Software Modernization for the Digital Economy 29 th May 2015 This presentation is solely for the use of Zinnov personnel and clients. No portion of it may be circulated, quoted, reproduced, or distributed within or outside the client organisation without prior approval from Zinnov

Upload: zinnov

Post on 16-Apr-2017

128.363 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Software Modernization for the Digital Economy

WORKING SESSION:RECRUITMENT BEST PRACTICES

MAY 2014

Software Modernization for the Digital Economy29th May 2015

This presentation is solely for the use of Zinnov personnel and clients. No portion of it may be circulated, quoted, reproduced, or distributed within or outside the client organisation without prior approval from Zinnov

Page 2: Software Modernization for the Digital Economy

Software landscape is changing dynamically with the emergence of new age companies

2Source: Zinnov Research and Analysis

WHAT DOES IT MEAN FOR SOFTWARE

PROVIDERS?

MESSAGINGTRANSPORTATION & LOGISTICS BOOKS

HOTELSRECRUITMENT MUSIC

SOFTWARE IS EATING THE

WORLD – DIGITAL

NATIVES ARE CHANGING THE

GAME

Page 3: Software Modernization for the Digital Economy

ISVs need to adapt to the changing software landscape

SaaS-IFIED WORLD

Almost all software will run on Clouds –

hardware and software will be

hosted on a cloud and IT services will be purchased on a pay-per-use basis

S/W DEV WILL BECOME FAST AND

CHEAP

Product lifecycles will shorten –

products / modules / solutions

will be developed and delivered

quickly and cheaply

CONSUMPTION VIA MOBILE ‘THINGS’

Consumerization will drive a shift to devices which will include mobiles,

tablets, home appliances,

consoles, TVs, etc..

ALL VALUE WILL LIE IN DATA

Hardware will become irrelevant – all users will care about is quality of software and the

level of data driven decision making it

enables

Page 4: Software Modernization for the Digital Economy

Constant customer and market feedback is leading to rapidly changing product requirements

1

2

3

Optimize

Upgrade

Change

The world is at the cusp of change and we need to stay prepared to contribute to this change by leveraging existing investments, planning modernization and accelerating deployment of innovative solutions

Page 5: Software Modernization for the Digital Economy

Software companies need to constantly adapt their product portfolios

Business Agility is the new source of business value

Need for faster product and application development portfolios

Need for reduction of maintenance budgets

Page 6: Software Modernization for the Digital Economy

Existing software has to undergo Modernization

1 2

4 5

3

SMAC Enablement

UX Reengineering

Integration Migration

Re-Architecture

Page 7: Software Modernization for the Digital Economy

Key Areas of Software Modernization

PEOPLE

PROCESS

TECHNOLOGY

ECOSYSTEM CONNECTSoftware

Modernization

Page 8: Software Modernization for the Digital Economy

Key Areas of Software Modernization

PEOPLE

PROCESS

TECHNOLOGY

ECOSYSTEM CONNECTSoftware

Modernization

Page 9: Software Modernization for the Digital Economy

In order to enable software modernization, new roles and responsibilities need to be created

1Data Scientist

Examines and analyses breadth and depth of data from multiple sources using analytics platforms, in order to derive actionable insights

Data Visualizer

Presents data in a lucid and understandable manner for employees, partners, customers, etc. in order to help them notice trends and patterns

Product Engineer

Helps in the development of solutions incrementally and iteratively

Solution Architect

Defines the architecture required to implement solutions to meet requirements while ensuring alignment with the enterprise architecture

DevOps

Enables collaboration between development and operations staff through all stages of the development lifecycle of solutions

Scrum Master

Helps the team in adopting Agile methodologies better, which are required for the iterative and incremental development of solutions

Product Manager

Strategizes, assigns and drives the development of digital solutions

• Data Analytics• Platform Expertise

• UI/UX• Multimedia (Audio & Visual) Skills

• Software Product development• Agile Methodologies

• Mobility• Software Product development

• Software Product development• Agile methodologies

• Software Product development• Data Analytics • UI/UX

• Software Product development• Agile Methodologies

• Business Knowledge

• Communication Skills• Mobility

Skills Required

People

Page 10: Software Modernization for the Digital Economy

The New Talent required is radically different from the traditional talent in terms of skills, approach, business-acumen and compensation

• Strong computing skills (esp. Natural Language Programming, Machine Learning, Artificial Intelligence) in addition to JavaScript, HTML5, C++, etc.

• Strong background in Statistics

• Adept at Java, Python, C, C++, HTML, etc.• Knowledge of statistics not required

• Have a Product approach• Adept at Agile, Kanban, etc.• Work in short cycles

• Follow Agile or Waterfall• Have long project cycles

• Domain expertise/ business acumen is a must-have• Cross-functional working

• Domain expertise/ business acumen is nice-to-have• Work in silos

• Usually Masters degree from top universities such as Stanford, IITs, IISc, King College, CMU, etc.

• A substantial fraction also has a PhD.

• Computer Science graduates from Tier1 or Tier2 engineering colleges

• Startups and Tech Mafias such as Apple, Facebook, Google, etc. • Typically spread across service providers

• Compensation is high. The median for the following experience levels are:

• Entry: $ 90K• Mid-Career: $ 112K• Experienced: $ 112K (Goes up to $ 300K )

• Compensation is lower. The median for the following experience levels of a Software Engineer:

• Entry: $ 70K• Mid-Career: $ 80K• Experienced: $ 90 - 100K

Skillset

Approach

Business Knowledge

Education

Talent Concentration

Compensation

Traditional RequirementsNew Requirements

People

Page 11: Software Modernization for the Digital Economy

A well-structured Technical Career Path needs to be created for employees

Implementation & Maintenance Development/Design & Ownership Conceptualization

Developer Senior Developer Technical LeadArchitect -> Senior Architect -

> Chief Architect

• Fixes small bugs & does small-scale implementation

• Works with the UI/UX designer with the Project Manager acting as liaison

• Undertakes module ownership and process design responsibility of the module

• Undertakes overall ownership of most of the system; does short-term decision-making

• Here on, can decide to be a Manager or an Architect

• Complete ownership of the entire system with all decision-making power at the process design and conceptualization level (which framework to choose, etc.)

• With progressive seniority, the breadth of responsibilities increase.

Business Analyst

• Operates & maintains pre-defined statistical models

• Develops statistical data models and analyses them using regression, K means clustering, etc.

• Ownership increases with progression to Principal role

Senior Business Analyst

• Creates cloud-based analytics platforms

• Develops algorithms for data modelling, simulation & optimization

• Designs experiments, generates business insights and visualizes results

Note: Some of the tools commonly used include SCOPE, R, JMP, SQL, WEKA, MATLAB, SAS, Mahout, Scikit-learn, etc.

Ana

lytic

sEn

gine

erin

g

Principal Business Analyst

Note: Some of the tools commonly used include JavaScript, HTML5, CSS3, Angularjs by Google, etc.

People

Page 12: Software Modernization for the Digital Economy

A comprehensive approach that tackles the challenges inherent at each stage of Technical Career Path maturity is required

HR Groundwork Pilot Role Models ScalabilityInstitutionalization & Growth

To create policies regarding TCP to ensure a good launch

To spread awareness, exposure and create processes to enhance TCP

To create the core members of TCP to ensure quick wins and demonstrate value in this path

To inspire the workforce by interaction with successful people in TCP (in and outside the org.)

To design processes around ICs* such that the Digital model keeps growing

Communication - Basic

To create general awareness about TCP among the broader workforce

Communication - Advanced

To provide better understanding of TCP to targeted workforce who are inclined towards it

Societal Acceptance

To create awareness and increase acceptance among employees’ peers/family about the roles & responsibilities of an IC* in the company and the value it generates

1 2 3 4 5

6B6A

7

Note: *Individual Contributors

People

Page 13: Software Modernization for the Digital Economy

Key Areas of Software Modernization

PEOPLE

PROCESS

TECHNOLOGY

ECOSYSTEM CONNECTSoftware

Modernization

Page 14: Software Modernization for the Digital Economy

People

Tech

Implementation Complete

Solution 1

Solution 2

Solution 3

Solution 4Implementation in

process

Agile methodology is preferred in the development of modern solutionsIncremental execution of prioritized solutions

Process

Continuous Tracking

Update Product Backlog

Create Sprint Backlog

Prepare People, Technology & Org

Structure feature by feature

Implement Solution

incrementally and

iteratively feature by

feature

Sprint Review

Working Solution

AGILE DEVELOPMENT

Software Modernization requires incremental & iterative execution Process

Page 15: Software Modernization for the Digital Economy

Distributed Agile can be implemented for geographically distributed teams

Key Drivers for Distributed Agile in Solution Development

• Barriers to communication and collaboration

• Misunderstood Requirements• Differences in standards, processes and

tools• Cultural differences and/or insensitivity• Lack of common ownership• Lack of trust, coordination and visibility

across geographies

Best Practices for adopting and implementing Distributed Agile

Fostering cross-pollination and face-to-face real time communication

Tools for platform integration, sprint & release planning, real/near time team communication, reporting and security

Using collaboration tools (with real-time feedback) for scrum artifacts such as product backlog, sprint backlog, burn down reports, etc.

Remote pairing for common resource ownership

Proxy product owner for each geography

Some Effective Agile Tools

Process

Page 16: Software Modernization for the Digital Economy

DevOps enables minimized time to market for software which will speed up the modernization process

Business

Development

Test/ Quality Assurance

Operations

Idea

Customer Friction

Pre 2000’sWaterfall Development

Cycle time: Months or Years

Business

Development

Operations

Idea

Customer

Agile

2000’sIterative Agile Development

Cycle time: Weeks or Months

Business

Development

Operations

Lean

2010’sLean with DevOpsCycle time: Hours or Days

DevOps

Idea

Customer

Process

Page 17: Software Modernization for the Digital Economy

As DevOps increasingly is becoming a necessity, the impact is felt by all organizational functions of software providers

Business Engineering

Human Resources

“How does DevOps impact business strategy?”

“How does DevOps impact product development?”

“How does DevOps impact organization structure and talent pipelines?”

1 2

4

IT/Operations“How does DevOps impact IT infrastructure and

operations?”

3

Process

Page 18: Software Modernization for the Digital Economy

DevOps can provide a competitive advantage during software modernization and is on its way to becoming a hygiene factor

Impact of DevOps on Business Strategy

DevOps positively impacts the scalability, cost and quality for software modernization. However, these factors do not lead to a sustained competitive advantage

DevOps speeds up the time to market tremendously, which allows companies to try out more innovations in the market – this continuous innovation allows software providers to gain a competitive advantage

Scale

Cost

Quality

Speed

Unlimited Users, Data and Transactions

Lean Operations

Zero Downtime

Sustained InnovationSustainable Competitive

Advantage

Hygiene Factors

Business“How does DevOps impact

business strategy?”

1

Process

Page 19: Software Modernization for the Digital Economy

DevOps positively impacts the process of modernization by removing bottlenecks through automation

Engineering“How does DevOps impact

product development?”

2 DevOps positively impacts the process of modernization by removing

bottlenecks through automation, providing full-stack testing and increasing collaboration with the operations team

Development Architecture

Code Development

Testing/QA

IT Architecture

Environment Development

Deployment

Dev Ops

Architects need to think holistically and work with Dev and Ops teams as they design and enhance the application

Environments need to be architected in a manner to allow for the evolution of the applications, both as they are developed and projected to evolve

It requires Ops to allow Developers to take more responsibility of the operational characteristics of the applications they are building

Deploying at each instance the full stack that includes the environment, middleware and the application being deployed is essential for improving quality

All teams should start using the same Change Management and Work Item Management tools

Process

Page 20: Software Modernization for the Digital Economy

Development and IT Architecture stop existing as silos and work towards building a common ‘Deployment Architecture’

Development Architecture IT Architecture Deployment

Architecture

Architecting for Deployment

Architecting for Resilience

Consolidated Development Architecture

Simplify and streamline the design. This includes standardization of infrastructure components, but also removing architectural elements which were originally intended to ensure other quality attributes, now overruled by the higher priority of deployment

The system as a whole needs to be as available as possible

With DevOps, from an architectural point of view, the development and target environments form one system with three main categories of users: developers, operators and end-users

Engineering“How does DevOps impact

product development?”

2

Impact of DevOps on Architecture

Process

Page 21: Software Modernization for the Digital Economy

Development teams focus on creating easily configurable applications for automation and removing hardcoded application resourcing

Engineering“How does DevOps impact

product development?”

2

Impact of DevOps on Development

Coding for Configurability

No Hardcoding of Application Resources

It should be possible to configure all aspects of the application, while making it ready for deployment. Applications should not depend on specific machine configurations but should be able to detect machine capabilities and change accordingly

An application should not depend on hard-coded machine paths for additional information or on specific IP addresses for connectivity. It should be possible to specific such information while packaging the application or while deploying the application to the target platform

DevOps requires the Development team to collaborate closely with the Ops team

The application code needs to be written with requirements for DevOps in mind

Process

Page 22: Software Modernization for the Digital Economy

QA teams are highly automated and aligned to Continuous Integration

QA teams need to align their testing to DevOps through a focus on automation and standardization

QA needs requires skill-sets of automated testing environments such as Selenium and Watir

Receive build deployed on environment designated by QA

Perform functional and regression testing

Sign-off on build after keeping build under observation

Traditional QA

All pre-testing tasks, clean-ups, post-testing tasks, etc. are automated and aligned with the Continuous Integration cycle

All test cases are automated and achieve near 100% code coverage

Environments are standardized and deployment on QA boxes is automated

Focus of DevOps QA

Engineering“How does DevOps impact

product development?”

2

Impact of DevOps on Testing/QA

Process

Page 23: Software Modernization for the Digital Economy

DevOps needs to be integrated into existing IT Infrastructure with new tools and skillsets to cope with changing demands

“How does DevOps impact IT infrastructure and operations?”

DevOps requires a new set of tools which seamlessly integrates the development through to deployment

The IT operations for DevOps needs to have knowledge of operating DevOps tools across 3 functional areas: Continuous Integration and Continuous Deployment and Monitoring/Logging

Continuous Integration

Continuous Deployment

Monitoring & Logging

DevOps Area Popular Tools

Fabric

Impact of DevOps on IT Infrastructure & Operations

IT/Operations“How does DevOps impact

IT Infrastructure & Operations?”

3

Process

Page 24: Software Modernization for the Digital Economy

DevOps creates changes in the organization structure and a requirement for sourcing DevOps talent through fresh hiring and re-training

Human Resources

“How does DevOps impact organization structure and talent pipelines?”

A simplified Org Structure with DevOps

Organization Structure designed for collaboration between Development & Operations

Talent pipeline designed to attract fresh DevOps talent as well as re-training of existing operations teams

Impact of DevOps on HR

“How does DevOps impact IT infrastructure and operations?”

Human Resources

3

Process

Page 25: Software Modernization for the Digital Economy

Key Areas of Software Modernization

PEOPLE

PROCESS

TECHNOLOGY

ECOSYSTEM CONNECTSoftware

Modernization

Page 26: Software Modernization for the Digital Economy

Software Providers need to adopt Multi Speed IT in order to cater to rapidly changing requirements

Speed = Slowest

Speed = Faster

Speed = Fastest

Service

Integrate

Access & Expose

Consume

Data Backend Service ESB/SOA Service

Curated Data(Internal/ External)

Standardized API Layer & Management

IP AppsConsumer Apps

Software Products

Partner Services

WebMobile

Device & Things

Partner Rapid development environment to speed up development process, coupled with full-coding Integrated Development Environment for flexibility

Allows continuous integration & feedback

Business participates in application development while IT supports them (& ensures compliance)

Browser-based dev. environment Aggressive time-to-market

Adaptable to constant change

Tools such as Apigee and Mulesoft integrate legacy systems with cloud & SaaS apps, Business Management software (SAP, Salesforce), etc.

The API Layer effectively exposes the data to developers and partners

API-led connectivity enables legacy system access, unlocks data value & reduces legacy service disruptions

Legacy System Integration

Agile Speed

Technology

Page 27: Software Modernization for the Digital Economy

New Age technology and tools are imperative for software modernization

Project Management

Enterprise Scale Programs

Automated Configuration Management

Cont. Integration

Automated Unit Testing

Alerts & Monitoring

Code Repository Version Control

PROCESSES & TOOLS

AG

ILE

DEV O

PS

Technology

Page 28: Software Modernization for the Digital Economy

Software providers should implement modern technologies that are powerful, effective and easily maintained

UI Frameworks MVC Pattern

Data Visualization

Web Apps

Native Apps

App Dev. Platform

User Experience

Web Services

Security & Identity Management

Open APIs

Mean Stack

Middleware

Data Storage

Data At Scale

Data to Insights

ETL

Cloud Deployment

OS

DataOS/ Infrastructure

• Understanding mobile users

• Time Space constraints• Touch, Location, Proximity

sensors• Mobile Design Patters

Fundamentals: Virtualization &

Tenancy Models

Software Defined

App Framework

Technology

Page 29: Software Modernization for the Digital Economy

Key Areas of Software Modernization

PEOPLE

PROCESS

TECHNOLOGY

ECOSYSTEM CONNECTSoftware

Modernization

Page 30: Software Modernization for the Digital Economy

Software providers need to establish partnerships across the ecosystem in order to leverage their talent, technologies, expertise & services

Partnerships

Service ProvidersUniversity Connects

Platform Partners Start Up Connects1

43

2

Ecosystem Connect

Page 31: Software Modernization for the Digital Economy

IBM, SAP and Salesforce.com are some of the best platform partners across Analytics, Mobile App Development and Collaboration

2

3

1

Mobile Application

Development Platform (MAPD)

Advanced Analytics Platform (AAP)

Collaboration Platform

SAS, a leader in AAP, provides a wide range of advanced analytics (predictive analytics, optimization,

forecasting, text analytics, simulation, etc.) to yield insights for

solutions for risk management, customer intelligence, retail & other

domain-specific offerings

SAP, a leader in MAPD, provides development & services for user-

centric mobile apps for employees, partners and

customers on an integrated, open, standards-based platform*

Salesforce is a Collaboration Platform leader in both Platform Capabilities and Organizational

Capabilities

Ecosystem Connect

Page 32: Software Modernization for the Digital Economy

A holistic approach needs to be adopted by software providers to engage with startups

2

3

5

Drive the internal change

Create an Internal Marketplace

Connect with start-ups across the entire value chain

Partner with existing start-up facilitators

41• Facilitate interaction between start-ups and

internal teams• Promote and incentivise Entrepreneurship• Ideate, Build and Execute on new ideas

Acquire Targets

• Create a network of accelerators focussed on emerging technologies

• Align your CoEs with accelerators to provide start-ups with the soft and hard infra

• Create a marketplace for start-ups to connect with and be mentored by business units

• Validate the start-up ideas/products by deploying them in the organizational workflow

• Partner with industry initiatives such as NASSCOM-10k, Productnation etc

• Partner with MNCs existing accelerator programs• Connect with university incubation programs

• Make strategic acquisition of growth stage/Mature companies

• Buy IPs to grow non linear revenues• Partner with startups for a joint GTM strategy by

providing SI services on top of products

Ecosystem Connect

Page 33: Software Modernization for the Digital Economy

Software providers need to collaborate with new entrants doing disruptive innovation to stay relevant

IBM Global Entrepreneur Program for Cloud Startups

enables emerging companies and connects them into IBM’s vast global network of clients,

consultants, Innovation Centers, developers,

SAP launched Startup Focus as a global program to help promising startups in the Big Data, predictive and real-time analytics space develop new

applications on SAP HANA and accelerate market traction.

Microsoft BizSpark has an association with 100000+

startups 1500+partners in 165+ countries and 100+ Microsoft

Innovation Centers

Software providers need to get out of their own silos, cultural barriers, and corporate jargon and go to the startup community on their terms

Software providers get to know a broad swath of vetted entrepreneurs for months or years prior to making an investment or acquisition decision

Ecosystem Connect

Page 34: Software Modernization for the Digital Economy

Software Providers need to narrow skills gap to cater to new age requirements

Academic Initiative collaborations with more than 1,000 academic partners to

design and teach curriculum to undergraduates and graduates on big data and analytics skills

2

1

3

Narrow skills gap by building talent for new age requirements

Create branding in universities fresh talent pool

Leverage cutting edge technology & research professors

CONSEQUENCES OF STRONG UNIVERSITY CONNECT

Ecosystem Connect

Page 35: Software Modernization for the Digital Economy

It is critical to establish connects with universities with related software development propensity

PEOPLE INFRASTRUCTURE & PROGRAM ENGAGEMENT OTHERS

40% 30% 20% 10%

Professor Rating: 20%

Student Profile Rating: 20%Parameters to be considered include:

• Related Research Propensity

• Available Skillsets

Infrastructure Rating: 15%Parameters to be considered include:

• Relevant Software Labs & Tools

• Relevant CoEs/ Cells

Program Rating: 5%Parameters to be considered include:

• Related course program

Finance Considerations Rating: 15%

Amenability to desired Engagement Model: 5%

Mindshare Rating: 5%Parameters to be considered include:

• Related publications & Papers

Partnership Rating: 5%Parameters to be considered include:

• Existing related partnerships with other companies

List of shortlisted universities for partnership

Zinnov recommends the following framework for targeting & selecting universities

Ecosystem Connect

Page 36: Software Modernization for the Digital Economy

It is critical to engage with niche Service Providers with product development capabilities

This parameter would measure the number and effectiveness of the Solution

Accelerators of the service providers

This parameter would evaluate whether or not the service provider has a geo-

presence in the desired geographies, or its proximity to the same

This parameter would evaluate the presence and effectiveness of Scaled Agile Network

This parameter would measure the presence and capabilities of the platform partnerships the service

providers has

This parameter would measure the Product Development capabilities of

the service provider

This parameter would be used to measure the presence of advanced skill-sets (Big Data

Analytics, Machine Learning, Natural Language Processing, Mobility & UI/UX)

Advanced Skill-sets

Solution Accelerators

Service Provider Footprint

Scaled Agile Framework

Product Development Capabilities

Platform partnerships

*

Service Provider Selection

Framework

Ecosystem Connect

Page 37: Software Modernization for the Digital Economy

Service Providers vary vastly in their modernization capabilities, processes and platform partnerships

Product developmentcapabilities

Significant non-linear revenueContinuous integration, rapid prototyping and incremental developmentMature business models (Outcome based etc.)

Inconsequential non-linear revenue Leverages waterfall or spiral methodologiesTraditional business models (T&M, Fixed Price etc.)

Parameter New Age Service Providers Traditional Service ProvidersService maturity Service maturity

Advanced Skill-set

Skillful at advanced technologies such as Natural Language Programming, Machine Learning, Artificial Intelligence

Nascent understanding of growing technologies

Solution AcceleratorsStrong PES capabilities around solutions accelerators (both vertical specific & agnostic )

Moderate focus on solution accelerators. Larger focus on services as compared to solutions.

Global FootprintPrimary presence in the Bay Area, New York and Bangalore due to concentration of skill sets in these areas

Wide spread global presence due to non-dependency on emerging skill sets

Scaled Agile Framework Dynamic adoption of distributed agile amongst product and IT teams

Gradual transformation towards agile, primarily standard waterfall model in existence at large

Platform PartnershipsLeverage Product/ Platform players in 360 degree partnerships – To “Sell with“ & “Sell through”

Traditional revenue sharing “ Sell with “ strategy observed with technology players

Ecosystem Connect

Page 38: Software Modernization for the Digital Economy

Bangalore 69 "Prathiba Complex", 4th 'A' Cross, Koramangala 5th Block,Bangalore-560 095. Phone: +91-80-41127925/6

SingaporeLevel 42, Suntec Tower Three8 Temasek BoulevardSingapore 038988Phone:+65 6829 2123

Texas21, Waterway AveSuite 300 The WoodlandsTX-77380 USAPhone:+1-281-362-2773

BeijingMeilifang Tower 4, Entrance 4, 10/F #1003,11 Beiyuan Shuangying Road,Chaoyang District, BeijingChina 100012

Thank You

Gurgaon Office:First Floor,Plot no. 131, Sector 44, Gurgaon-122002,Phone: +91 124 4420100

California Office3080 Olcott Street Suite A125, Santa Clara, CA 95054 Phone: +408-716-8432