a012b - software development product & services - the people framework

Upload: catatoniaunlimited

Post on 09-Apr-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    1/18

    Mar 2008

    Software DevelopmentServices: The People

    Framework

    Creating Technology ChampionsBernard Sia

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    2/18

    EXECUTIVE SUMMARYThe document will attempt to rebrand the existing notion of a Support/Operations Vs Project

    dichotomy and propose a service oriented, career growth planning and human capital

    development infrastructure that ties the organization as a seamless whole. Components of

    the service chain and the responsibilities of the each proposed unit will be expounded to

    tackle the weaknesses of a project/support team split. At the end, there will be 5 key

    departments for Software & Solutions delivery namely; Professional Services, Service Desk,

    Program Management, Product Development & System Administration.

    The structure and process flows introduced are by no means complete and can be expanded

    to accommodate business needs.

    THE PROBLEM STATEMENTS

    HUMAN & KNOWLEDGE CAPITAL RETENTION & GROWTH

    The crutch of any organization is in its myopic treatment of human resources. In a service

    industry that translates raw brain power into software product, no other arena of gargantuan

    failures can compare against an organization that:-

    a) Are biased against any one function within the organization, typically against the

    technical artisan and leaning towards management. In particular where career growth

    and advancement are concerned.

    b) Do not provide transparent career planning and attainable goals and objective as one

    progress through the years of service.

    c) Do not have a reward system that differentiates performers from their peers, hence

    eliminating any desire towards progress.

    AGGRANDIZING THE DIVISION OF ROLES BETWEEN SUPPORT AND PROJECT

    TEAM MEMBERS

    It is extremely tempting to maintain the line of thought of separating project team members

    and operations/support personnel. Often the difference in psyche is further heightened with

    character prejudices, e.g. support personnel are more laid back, less motivated and hence

    suited for the doldrums of repetitive work; where as a project team member is averse

    towards litany. Once accepted, this mentality drives deeper the wedge between the 2 units

    where the organization haplessly profiling less driven candidates for support & operational

    roles. Coupled to that, it is as if a caste system of old is stamped across the forehead of all

    support personnel, dooming them to play the same role in their next corporate incarnation.

    Humbly, it goes against the roots of any good leadership to allow hiring based on ineptitude;

    new hires need to possess the skills and acumen to succeed and ultimately contribute to the

    overall human & knowledge capital of the organization. It is with the accumulation of

    Page

    2

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    3/18

    likeminded, performance oriented individuals that will elevate the organization to the next

    level.

    SEPARATION OF STRUCTURE RESULTS IN SKILL DISJOINT

    Naturally, the project team will have first dibs on the forefront of tools & technology, and it is

    through each project that the organization learns and applies the lessons from it. Often byseparating the units, the support team will perpetually be several steps behind. The chasm

    is further widened with the rapid pace of technological change and heightened demand for

    services. Typically, the support team that was intended to fix a bug will revert to the project

    team; a self defeating admission of skill limitation on top of grinding to a halt the

    performance level of project team members.

    The solution of implementing a common development framework and methodology has

    often been used to ensure standardization of skills. Unfortunately, the rate of technological

    and required process change has made this decision counterproductive. Epitomized by

    enterprise architecture thats not only several generations behind the current scenario but

    also with mountainous documentation that has to be constantly kept abreast to remain

    relevant. This in turn hinders the organization to move at the pace of new competitiveentrants that are able to bring to business solutions rapidly.

    The organization then begins to make excuses for the initial standardization approach and

    stay dormant instead of investing in constant improvement. The argument here is not to

    reduce the merits of standardization, but to argue against barnacle like resistance towards

    change. Secondly, standardization as an end in itself will again lead to stagnation. A

    technology organization has to be agile to adapt to moving circumstances and subscribe to

    accelerated delivery whilst maintaining quality of work.

    Page

    3

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    4/18

    SOLUTION SUMMARY PROFESSIONAL SERVICES & PRODUCT

    DEVELOPMENT

    In summary, the creation of a Professional Services Unit which separates user requests,

    incident and problem management engagements from the project team is required. The

    project team should only focus on Software Development & Bug Fixing and the mapping of

    current processes to the proposed infrastructure is as follows:

    I nc

    ide

    nts/R

    eq

    ues

    ts,

    Requ

    ire

    me

    nts

    Bug

    Fix

    es

    ,T

    rainin

    g,

    New

    Pro

    duc

    ts,

    Pro

    toty

    pin

    g

    Functi

    ona

    lS

    upport

    ,C

    onsu

    ltin

    g

    New

    Softw

    are/

    Fix

    es

    Prototype/

    Mockups/Functional

    Specs

    Problems/Bugs/

    Requirements

    Requests/

    Incidents

    Professional Services

    Change Managers

    /Agents &Configuration

    Managers

    Problem &

    Service LevelManagers

    SME/Product

    QualityAssurance &Functional

    Software developers(Projects)

    Software Developers(Bug Fix)

    Product Development aka ProductTeam

    Architects &

    Software CodeQuality Assurance

    Software Trainers,Intellectual Property

    Configuration Mgmt

    Rotation

    Customer

    Trainin

    g/M

    anua

    ls/

    Fun

    ctio

    nalS

    upport

    AvailabilityReports/

    ImprovementPlans

    Customer

    Support Team

    Bug Fixers Problem MgmtSource CodeControl &

    Release Mgmt

    Service Level Team

    Service

    Catalogue

    Service Level

    Reporting

    Availability

    Reports/

    Improvement

    Plans

    Availability Reports/ImprovementPlans

    Improvem

    entPlans

    Functio

    nalS

    uppo

    rt/

    BugFi

    x/Training

    Now To Be

    Product Development aka Product

    Team

    Software developers(Projects)

    Software Developers(Bug Fix)

    Architects &

    Software DeploymentSoftware Trainers,

    Source Code Mgmt,Configuration Mgmt

    New

    Products/

    Hand

    ove

    r

    In

    cide

    nts/R

    eque

    sts

    Problems

    Probl

    ems

    The vision is a clean separation of task and duties by creating a unit thats customer

    focused, and another which is technology focused. We are able to achieve less

    communication end points as well as a central accountability of user related issues.

    Secondly, the Product Development team is shielded against unnecessary communication

    with the user.

    Finally, the move of Software Bug fixers to the Development team instead of support will

    ensure that the bug fixers are abreast with the rest of the project team. In fact, the proposed

    solution requires project team to rotate bug fixing duties. This will ensure redundancy

    Page

    4

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    5/18

    among team members and more programmers to solve bug related issues as well as project

    requirements.

    Page

    5

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    6/18

    Software developers(Projects)

    Software Developers(Bug Fix)

    Software Development Product & Services:- The People FrameworkTuesday, March 18, 2008

    Rotation

    Product Development aka Product Team

    Professional Services

    Change Managers/Agents &

    ConfigurationManagers

    Problem &Service Level

    Managers

    SME/ProductQuality

    Assurance &Functional

    Customer

    Architects &Software Code

    Quality Assurance

    Softwar e Trainers,

    Intellectual PropertyConfiguration Mgmt

    System

    Administration

    ApplicationSystem Administrators

    (Performance Tuning etc)

    1)Re

    quests/I

    ssue

    s

    2)Incidents/Requests

    6.1) Services/Solu

    tions/Guidance/Tra

    ining/Follow

    Through

    Server Build,Deployment Engineers,

    Back Up & Restore.

    5.1)

    New

    Produ

    ct/Fixe

    sService Desk

    IncidentManagement

    Access &ID Management/

    Requestfor Services

    (Messaging/LAN/Telephony)

    6.2)

    Servic

    es

    4)Deploymen

    tScripts

    5.2

    )S

    ervic

    es

    3)

    Bu

    gs/F

    un

    cti

    on

    al R

    equir

    em

    ents

    Project Mgmt/Contract Mgmt/Financial Mgmt/

    Portfolio & Pipeline Mgmt

    Program

    Management

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    7/18

    SOLUTION 1 - CREATING THE SERVICE DELIVERY CHAIN

    REBRANDING SUPPORT

    Foremost, we must forgo the word support in its entirety, a new business entity known as

    the Professional Services Unit will be in its place. The rebranding exercise will also

    extend to the Product Development Unit (Product Team), the Service Desk,

    Application System Administration and Program Management.The focus of this

    document will be more towards the Professional Services Units role and responsibilities as it

    is a huge departure from the existing traditional support model.

    Within this section we will also tackle the key responsibilities of each of this unit and how

    they interact with each other.

    PROFESSIONAL SERVICES UNIT (PSU)

    The Professional Services Unit is intended to be customer centric by nature, the values thatthe unit should subscribe to is constant vigilance in ensuring customer satisfaction, and the

    necessaryfunctional skills to master the product and services that are delivered to the

    customer. Fundamentally, the PSU personnel will be involved in the initial requirements

    gathering process, and also through their own input, be able to translate business

    requirements into a format that is understandable by the Product Development Unit.

    Subsequently be involved in the Quality Assurance process to ensure that the product is

    delivered as required, and the follow through in terms of Product Usage Manuals & Change

    Management activities to prep the users for the product; finally, the tracking of product

    service levels and problem management of crisis situations.

    Value creation is capitalized when the responsibilities and ownership below is kept within

    this unit.

    Change Management

    Any software or services implementation would require change management. Sadly the

    word itself is a misnomer and a serious shift in paradigm and process orientation is required

    to do justice to this role. Often implemented in within low budget constraints; change

    management activities are whittled down to a broadcast website and passable training to

    the impacted users.

    The vision for a strong change management team is the infusing of fundamental skills to:-

    a) Assess the Current Business Scenario & Problem Statements

    b) Recommend the aspired TO BE landscape

    c) Assess and record the Gaps that needs to be fulfilled

    d) Prepare & Implement the Strategy & Tactical effort required to fill the gaps.

    e) Assess the efficacy to the business post implementation

    f) Provide problem management post implementation

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    8/18

    g) Recommend further improvements to both the business and the Product

    Development Unit.

    h) Influence and promote change agents within the user scape.

    Customer Centric Product/Service Configuration Management

    A single point of ownership for all product & services delivered to the customer is required.

    Currently, the organization goes into a frenzy of broadcasts and guessing game whenever

    any of the interconnecting services become unavailable. Being customer focus, a hierarchy

    of customer vs. product/services matrix needs to be built and vigilantly maintained, more

    importantly, the interdependencies among these services. By far, it is better to preempt and

    manage the customers expectations of a downtime compared to unannounced system

    unavailability. Example of a customer centric Configuration Management hierarchy:-

    1. User Impacted (Customer)

    1.1. User ICT Investments (Product/Software/Service)

    1.1.1. Underlying ICT Infrastructure

    1.1.1.1. Vendor Underpinning Contracts & Service Levels

    Product Problem & Service Level Management

    The PSU should also be responsible to track & monitor Service Levels of each product.

    Coupled with Quality assurance responsibilities, the ownership of customer satisfaction and

    eventual management of crisis will fall on the Professional Services Unit should there be

    underlying bugs that were not captured earlier, hence leading to more stringent quality

    testing. Secondly, performance improvements from the standpoint of the customer can beproposed to the Product Team. The organization needs to keep the Service Level

    Management responsibilities as close to the customer as possible, and with the relevant

    Problem and Change Management skills, the ability to explain and manage the users issue

    statements.

    The strength of Problem Management lies with the skills acquired in Change Management.

    This ensures that the Professional Services Unit will be in the forefront and midst of any

    major incident, managing each user contact and functional work around and passing

    confirmed bugs to the product development unit.

    Finally, problem management tracks bug closures end to end. This ensures a single point of

    contact upon bug report and bug fix deployment to the users. Please note that this isseparate from the Incident management approach that ideally should be handled by the

    service desk. Separate because incident management should focus on taking in calls, while

    the follow up is done by the Professional Development Unit.

    Product Quality Assurance

    The PSUs involvement here comes prior to Unit Testing and deployment to production.

    PSUs role is to ensure that the product is free of defects; ideally, the PSU has final say

    Page

    8

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    9/18

    whether the product is ready for user consumption and will be preparing user test scripts

    that are more reflective of the users usage patterns. This responsibility is highly crucial to

    be owned by PSU as in the event of a disaster, it will fall onto the PSU personnel to resolve

    the aftermath and user management via the Change Management activities. Hence

    functional expertise are gained during the Quality Assurance/Control phase and reinforced

    as they provide training to the users once its gone live.

    Product/Business/Service Subject Matter Expert

    The PSU team member should also be the product expert within the context of Product

    Security Access, Functions, Data Model & non programmatic configuration of the product

    deployed. The vision here is a team thats able to assist the users with the intricacies of the

    new software. Secondly, based on their interactions, be able to pass suggestions

    representative of the users feedback to the Product Development Unit, better ways to

    model and present user interface and business rules.

    Thirdly, for usability and data related issue, be able to diagnose and provide the solution.

    The emphasis here is separating coding level fixes i.e. true bugs, vs. issues that are data

    related. Should it be process and data related the skills in Change Management kicks in tomanage the users experience.

    Finally, as Product & Subject Matter Expert that are closely linked to the customer, the PSU

    should be responsible for the publication and upkeep of product manuals, user help files,

    training & presentation materials.

    PRODUCT DEVELOPMENT UNIT (PDU)

    The Product Development Unit epitomizes technology mastery and excellence. Key take

    away for the proposed structure is an almost 90% shielding of the product team from havingto deal with the day to day gripe and groans of the customer. Secondly, people exposure will

    only come in during close-group sessions ala a rapid prototyping engagement/agile

    methodology.

    It is extremely important for the productivity of the team as customer interruptions lead to

    forced follow through and jarring of thought processes. Often project plan are impacted and

    source code quality at risk. The major responsibilities for this unit are as follows:-

    Effort Estimation, Architecting & Continuous Research

    The Product Development team needs to be experienced and verse in translating functional

    specifications provided by the Professional Services Team into workable code. Value iscreated from the ability to streamline customer requests and counter propose their

    requirements with something that is easier to use as well as easier to development.

    Ultimately, time to market and quality delivery is the true guiding principle towards any

    software product.

    The architecting responsibility comes with experience and exposure. The team should focus

    on being able to deliver the code base faster, with fewer lines of codes which ultimately

    Page

    9

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    10/18

    translate to lesser bugs. In summary the team will need to form software technology

    standards and broadcast those standards across the organization.

    Software Development & Bug Fixing

    The problem statement that is resolved here is the fact that the Product Development Team

    will perpetually be at the forefront of technology, hence to have another unit that focussolely in bug fixing and user support will lead to a gap in knowledge and expertise.

    Eventually, the support team will tend to revert to the project team for a solution. Keep the

    bug fixing portion separate from user facing support functions.

    Software Developers(Bug Fix)

    Software Trainers,Source Code Mgmt,Configuration Mgmt Role Rotation

    Role Rotation

    JuniorSoftware

    Developers

    Architects

    Software developers(Projects)

    A rotational time table is introduced, where team members are required to perform bug fix

    duties. Naturally it is not recommended for the person to be on both project and bug fixing

    detail at the same time, however, in times of crisis, the potential of that happening will arise.

    Bug fixing rotation is a more managed approach to keep the project team on their toes and

    ensures that they are responsible for their codes.

    The best element of this model is the fact that every programmer can fix every other

    programmers work; this introduces elements of peer pressure to sustain quality and code

    standards. The weaker programmer will be pressured to buck up for fear of being scrutinized

    by the next programmer on bug fix duty.

    The model will succeed exceptionally when quality assurance from the Professional Services

    team is strong and comprehensive to identify show stopper bugs. Should there be any bugs

    found once the system hits Production, it should be minor enough to attach a manageable

    service level tagged time frame for the solution. For example:-

    Priority/Severity

    Bug Type Description Example Service Level

    Low Typo on screen labels. (1 Day)End of Day

    deployment to

    Production

    Page

    10

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    11/18

    Medium/Hard Page Crash, Page not found 440 (3 Days) end of

    Week deployment to

    production

    Hard Page Performance Slow, Error on Report Calculation

    Values, Integration Failures

    (5-8 Days) end of 2

    Week Deployment to

    Production

    The idea is to sustain a single code base entity and rapid transfer of knowledge among the

    team members as they belong to the same unit and hierarchy. The standardization and

    processes proposed will be modeled cohesively as the team will be the same team thats

    involved in projects. Therefore, the team will have a bigger sense of ownership to avoid all

    major bugs, and perform comprehensive unit testing before even involving the Professional

    Services Team in the Quality Assurance phase.

    In summary, we envision a team that is able to rapidly, and safely perform code fixes and

    production deployment on a daily basis without fear of interrupting business. Finally, a team

    that has a strong sense of quality to avoid major bugs that eats into their Non-Core

    utilization.

    Source Code Control and Intellectual Property Management

    Again, being the same entity, source code control and intellectual property management

    can be better achieved, as we can assign a single custodian to all the source code that has

    been deployed to production. Although certain level of automation is available, one cannot

    dismiss the need for human touch where policing is concerned. Secondly, the skill set and

    learning curve will be further heightened when the same team that are managing the code

    base for project, can track the code base that is required for bug fixing. The challenge lies in

    the discipline of code merging, and the most logical way to manage it is to keep both project

    and bug fix within the same team.

    Source Code Quality

    Profiling, optimization and refactoring are 3 common activities that must be in the to do

    list of any software development shop. It ensures that the code base is constantly cleansed

    prior to deployment to production environment.

    Code Libraries, Automation and Tool Smiths

    As the team adapts to larger demand, the requirements for creating automation within the

    development process is required. Secondly, generic code libraries reused for future works.The role of a tool smith is required to build as well as research 3rd party APIs and provide

    recommendations to rapidly deliver common functions across different projects.

    Technology Trainers & Boot Camp

    Reigning in order out of chaos requires a curriculum that is flexible enough to adapt to the

    ever changing technology environment. The Product Development Team will be required to

    run and manage boot camps to ramp up new hires to the standards and methodologies

    Page

    11

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    12/18

    applied within the organization. More importantly the technological ladder and verticals that

    needs to be mastered, within this framework also, the career path and planning for new

    hires and existing personnel can be better managed.

    PROGRAM MANAGEMENT UNIT (PMU)

    The idea behind program management is the ability to absorb all the resources and abilities

    within the organization and channel it towards project delivery. Add to that, is the function

    of stakeholder management and the acumen required to drive home difficult solutions that

    requires assistance from different parties.

    Within the Service Oriented Organization Structure proposed, the Project Managers role now

    is temporal by nature. He should receive authority via the Project Charter and prescribe

    standard methodology in facing the customer and the activities surrounding scheduling and

    planning.

    The discussion is kept short as a number of major publications already cover key tasks that

    a Project Manager should be responsible with.

    SYSTEM ADMINISTRATION UNIT (SAU)

    Amazingly, this skill is exceedingly lacking in general. This is primarily attributed to the

    myriad technologies required to manage the process of deployment. In summary, the

    personnel would require knowledge of the application framework, in particular web based

    technologies, configuration and tuning parameters, also performance parameters, profiling,

    error logging and diagnostic, capacity management, redundancy management i.e. server

    clustering, network load balancing, security configurations and administrative knowledge of

    the deployment platform.

    The Deployment Process

    In ITIL although covered by Release Management, does not do justice to the tasks required,

    within this context we focus at the gate keeping of the deploying activity. Ideally, no

    personnel from the Product Development Unit should have direct access to the server. At

    most a dummy account is provided for the Professional Services Unit Team to replicate

    errors that have been encountered by the user.

    Finally, by detaching server access between the development team and system

    administrators, it ensures the traceability of change and the identification of bad

    deployments.

    Web Services Configuration, Tuning, Capacity & Availability Management

    The team is required to constantly prune and manage optimum settings for any application

    and the server environment. Based on their research and management of server farms, the

    most optimum use of processing power and hardware should be proposed. The ASA needs to

    manage and balance server resources, growth planning, and the vision of being able to

    provide resources on demand during peak periods. The SAU team should be the one

    proposing the best hardening and redundancy approach to the Product Development Unit

    team members, hence alleviating programmers from having to meddle with server

    Page

    12

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    13/18

    configuration. In fact, developers should not have direct access to production server

    configurations.

    The takeaway here is the creation of a mini staging environment to dry run code releases,

    secondly, data wise, the mirroring of production data will ensure that bug incidents can be

    traced without having to work with the highly sensitive production environment.

    Second big takeaway is the skills required for an application specific systems administration.

    It is no longer as simple as looking at RAM, CPU or Hard disk capacity management, but in

    depth knowledge of the Operating Systems nooks and crannies, e.g. Registry Settings,

    Security Settings, Network optimization, Web Server Settings, Clusters and such. The list

    goes on, and the boundary between hardware and software is seriously blurred and biased

    towards software.

    Database tuning and Availability Management

    Database server administration is a minefield in itself, expert database administrators are

    able to trace deadlocks server performance down to the hard disk sector contention level

    and provide feedback to the developers, on top of which they are able to propose hardwarebase as well as network optimization that are transparent to the development teams

    implementation of the code base.

    The big takeaway here, the best performance, hardening and redundancy methodology on

    the hardware & infrastructure level should be adapted by the development team and not the

    other way around. When the responsibility lies with the development team, they will tend to

    circumvent infrastructure best practices in order for codes pieces to work. Finally, it ties

    back to the concept of Change Management during the Deployment process, no

    configuration changes as well as code pieces should be migrated to the server without

    identifying accountability and impacted users. More importantly, software developers should

    not have access to the production environment.

    SERVICE DESK (SD)

    A service desk for an outsourcing environment should be that of rapid, courteous and

    contact/incident capturing nature. The biggest challenge for the team is the large number of

    daily phone calls, and the need to rapidly end the conversation to free the line. Secondly,

    the large number of products and services proffered plagues the service desk personnel with

    information overload. Regardless of the amount of training provided, the team will have

    issues in managing the nuts and bolts of even functional details of a product when it is

    multiplied by a thousand permutations. Hence the need for a focused Product to

    Professional Services Team that follows up with the customer on the solution to the

    problem. The keywordproblem borrows from ITIL and it deals with the root causes and an allencompassing solution.

    The discussion on service desk is kept short as this is not the focus of the document.

    Page

    13

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    14/18

    SOLUTION 2 - HUMAN CAPITAL DEVELOPMENT WITHIN THE SERVICE

    DELIVERY CHAIN

    The cornerstone of human capital development lies with the retention of performing staffsand sharing of the performers knowledge across the organization. Without which, the cycle

    of intense productivity, burn out, and resignations will repeat ad infinitum. Secondly, within

    each organization, the definition and value of capital would need to be defined; in particular,

    the knowledge and expertise in creating and maintaining products and services. As an ICT

    Outsourcing company, no greater value should surpass the cumulative experience and

    contribution of its resources in ensuring that the organization continues to service its

    customers beyond the service levels defined.

    The Human Capital Development principles recommended are centered on grounding the

    personnel in the fundamentals of the technology and gradually growing his exposure across

    multiple technology verticals to achieve Architect status. The objective is the sustained

    capabilities and knowledge wisdom to undertake any manner of future customer requests.

    The weakness of a single pillared approach tends to be greater intelligence but lacking the

    birds eye view of the technology landscape and potential pitfalls. What we intend to create

    is an Architect that can span software development, networking, hardware, security and

    operating systems.

    The timeframe required to achieve this is quite frankly long in internet years. A proficient

    software developer can be molded within 2-4 years, add to that, the infrastructure operating

    system knowledge another 1 year, networks another year, and the more esoteric areas of

    performance and security profiling, we could see a duration of 10 years before technologist

    achieves sufficient breadth and depth of skills to architect an end to end solution for the

    customer. Like it or not, an ICT organization should not approach a solution like 4 blind menon an elephant, the viewpoint needs to be holistic and the goals aligned.

    In order to do so, the organization needs to break an evil spell that has cursed ICT human

    capital development, the over jarring preference for named title such as Manager, and the

    notion that a personnel must be a manager in order to warrant a better paycheck.

    THE CASE FOR DUAL CAREER PATH

    Problem Statements

    As it is, ICT organizations that are not careful in managing their technical resources result in

    mediocre performance & service delivery. At best the average cumulative experience is nomore than 3-5 years due to resignation or staff choosing to enter (or cajoled) into

    management related duties. The most often quoted reason for exit are lack of career

    advancement within the technical arena and they find multinationals that can pay more for

    their technical skills.

    Solution The Dual Career Path

    Page

    14

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    15/18

    Within Malaysia in particular, rarely is there an organization that sustains the career of a

    technology artisan, at best, after a 3-6 year working period, the individual is forced to make

    a hard choice. Adapt management skills, in particular project management, or risk being

    sidelined as a dead end programmer with personality issues and stay within the lower rungs

    of the organization.

    With a dual career path, the choices are easier and more attuned towards staff retentionrather than ushering them away. For example, in SUN Microsystems, the following 4 tier

    career ladders are provided for.

    Management Technical

    Engineering Manager 1 Staff Engineer

    Engineering Manager 2 Senior Staff Engineer

    Director Distinguished Engineer

    Vice President Fellow

    Titles aside, the salary ranges and benefits at corresponding levels of the two ladders areidentical. For example, Distinguished Engineers and Directors have the same salary range,bonus, and stock plans. Fundamentals to any career are remunerations; the organizationcan harp about how job satisfaction and environment plays a better part (which it does),however within the context of this argument, you must admit, that ice cold environmentalfactors trumps lip service.

    It is highly odd that although Malaysia aspires to be a technology powerhouse with theMultimedia Super Corridor project, after 12 years (at the writing of this document) we haveyet to adopt a single lesson from technology powerhouses on how they maintain and sustaintechnical personnel.

    Aligning the dual career path with the Organizational Structure Proposed

    Once we have the principles in mind, it is fairly easy to design a career path that celebratesperformance and experience. The scenario below explains it, with each level compoundingto the next:-

    Experience Level Requirements and Description of Responsibilities

    Associate Grunt work, either code, or produce product manual. Constantlearning of conformed standards & framework

    Consultant Able to produce work with minimal guidanceSenior Consultant Able to coach, train and produce architectural advice and

    improvements.Managerial/Technologist

    ManagerialProgram Management. Able to sustain administrative function of theorganization. To own & drive home organizational improvements.

    TechnologistAble to chart new territories, conduct assessment and propose

    Page

    15

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    16/18

    improvements as well as driving home and owning theimprovements.

    SeniorManagement/Technologist

    Senior ManagerStrategic Planning, Business Development, People grooming andSuccession Planning.

    Senior TechnologistsCross vertical architecting & Proposals.To Champion Research & Development and in house productdevelopment activities.

    Page

    16

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    17/18

  • 8/8/2019 A012b - Software Development Product & Services - The People Framework

    18/18

    KEY TAKEAWAYS AND END NOTE

    In rebranding support and creating an organization that is service and performance oriented,

    we must first eliminate any verbiage that even resembles support. A Professional Services

    Unit exists to nurture and ensure customer satisfaction via its expert knowledge of solutions

    and services extended to the customer. On the Product Development Unit, their reason for

    survival is the continuous creation and raising the bar of products released. All of which

    aligned towards the customer. The organization should eliminate positions that functions

    solely as postmen with no future growth. For example, help desk personnel should graduate

    to professional services unit.

    Lastly, the People Framework career paths should be readily available to all personnel

    regardless of unit that they belong to. Ultimately, creating the momentum and providing the

    platform for each individual to excel within the organization.

    To end, there should be no dead end jobs in any organization!

    Page