software modernization for the digital economy
Post on 16-Apr-2017
128.365 Views
Preview:
TRANSCRIPT
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
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
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
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
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
Existing software has to undergo Modernization
1 2
4 5
3
SMAC Enablement
UX Reengineering
Integration Migration
Re-Architecture
Key Areas of Software Modernization
PEOPLE
PROCESS
TECHNOLOGY
ECOSYSTEM CONNECTSoftware
Modernization
Key Areas of Software Modernization
PEOPLE
PROCESS
TECHNOLOGY
ECOSYSTEM CONNECTSoftware
Modernization
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
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
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
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
Key Areas of Software Modernization
PEOPLE
PROCESS
TECHNOLOGY
ECOSYSTEM CONNECTSoftware
Modernization
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
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
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
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
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
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
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
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
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
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
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
Key Areas of Software Modernization
PEOPLE
PROCESS
TECHNOLOGY
ECOSYSTEM CONNECTSoftware
Modernization
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
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
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
Key Areas of Software Modernization
PEOPLE
PROCESS
TECHNOLOGY
ECOSYSTEM CONNECTSoftware
Modernization
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
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
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
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
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
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
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
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
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
top related