What I Learned in 2012

  • published on10, Dec, 2017
  • commentsno comments

1) You have to pick your company very carefully. Culture is everything. Don’t pick management teams who are “too nice” or too mean.

2) Know when you’re ready for the next step in your career. Don’t waste your time treading water.

3) Demand recognition for your efforts.

4) Be strategic in your relationship building. Treat senior team members as mentors, your coworkers as allies, and junior team members as mentees.


^^^ A draft I lasted edited December 31, 2012 at 3:05pm. Very entertaining to look back on my apparent mentality at that time, as I publish this unfinished post at 5:52pm on December 10, 2017.

Part I: What is a Product Lifecycle Process?

Part I in a 5-part series about the process of implementing a new product lifecycle process within a high technology company.

A Great Product Life Cycle Process is the Framework of a Great Company

If you work in high tech, then chances are you follow some sort of product life cycle process — it’s the structure imposed on the development of a software product from the moment the idea materializes until the product must be retired. The question is: how good is the product life cycle process that your company uses? Should you optimize your product life cycle process to be more effective?

  • Do your company’s departments all work in silos, handing off work via Project Managers?
  • Do cross-departmental deliverables arrive late, incorrect, or insufficient?
  • Is company awareness of what major projects are being worked on very low?
  • Do your products or features have a tendency to fail in the market?
  • Is there little to no project transparency for major projects?
  • Is there a lack of individual accountability?
  • Do you often have to complete tasks that are not part of your job description?
  • Does your company suffer from project bottlenecks?
  • Are critical or late-stage resources constantly stressed and overworked due to receiving dependency materials too late?
  • Is your product bloated with features guided by the HIPPO (HIghest Paid Person’s Opinion) in the room?
  • Do products get released and then get abandoned?
  • Do projects get going and forget to include the right people until it’s too late?
  • Do you find yourself with questions about the project and not knowing who to ask?
  • Does your company seem to have arbitrary release dates and budgetary planning?

If you answered ‘Yes’ to any of those questions, it sounds like your product lifecycle could use an update.

What is a Product Life Cycle Process?

A product life cycle’s (or PLC for short) main goal is to ensure that the right people are working on the right projects at the right time. It identifies what tasks need to be completed in order to bring a product to market, as well as who is accountable for each task, who is responsible for approving each task/deliverable, at what point in the cycle each tasks needs to be completed, and so on. You can think of each product as having a point of conception (defining the idea of the product), then moving through an elaboration period (defining the specifics of the product) before going through the actual construction of the product (development), and then being released. And it doesn’t end there — a good product life cycle also accounts for the maintenance of that product (refining and adding additional features), measuring its success or failure, and eventually determining an “end of life” plan for it when it becomes technologically unsustainable, or irrelevant to the market or business.

While there are a plethora of process styles to choose from (each with their own varied approaches and timelines to essentially the same set of tasks or activities that need to take place), the two basic frameworks are Waterfall and Iterative (most commonly referred to as “Agile”).

Waterfall Product Lifecycle Process

Requirements > Design > Implementation > Quality Assurance > Maintenance

An illustration of the Waterfall model (source: http://blog.hydro4ge.com/waterfall-to-boehm/)

According to Wikipedia, “the waterfall model is a sequential design process, often used in software development processes, in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of Conception, Initiation, AnalysisDesign, Construction, TestingProduction/Implementation, and Maintenance.” I couldn’t have said it better myself :). Basically, the Waterfall model’s aim is to plan a product 100% before handing over a “how to” guide of fully completed functional specifications to Development to build it. The spirit of this concept is to crystalize each team member’s efforts within a phase — the Business folk huddle up from Conception to Analysis, then hand it over to the Design team who create the mockups per their requirements, then they hand everything over the fence to Development for Construction, Testing, and Implementation. Waterfall models generally work best for cultures that demand order and structure.

Pros and Cons of Waterfall Model

Pros:

  • Predictive model front-loads risk to planning phases
  • Departments stay focused on specific tasks
  • Emphasis on planning and research
  • Staged approach enforces discipline
  • Roles + tasks are well-defined
  • Progress is easy to define through Waterfall’s use of milestones
  • Use of full functional specifications make it easier to work with remote developers

Cons:

  • Stifles collaborative creativity
  • Difficult to anticipate and plan for all customer requirements
  • Does not adapt to change well
  • Does not fold in all departmental feedback during the planning process
  • Takes a long time for something to be built
  • Designs often need substantial rework once they get to development

Iterative or “Agile” Product Lifecycle Process

Planning > Implementation > Testing > Feedback > Project Standups + Sprints throughout

An illustration of the Agile process (source: http://www.sohamgreens.com/process.html)

“Agile projects are paintings, not photographs.” – Unknown

“Agile software development is a group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizingcross-functional teams. It promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to change,” (thanks again, Wikipedia!). Basically, Agile methodologies are all about focusing on getting features out into the wild as quickly as possible, and then learning from metrics and customer feedback. It encourages internal feedback from all departments, embraces speed and change, and eschews thorough documentation. Agile methodologies work best in cultures that respond well to change.

Pros and Cons of Agile Methodologies

Pros:

  • Encourages collaboration throughout the entire process
  • Fast development cycles called “sprints”
  • Products receive real-world market feedback quickly
  • Adaptive model makes responding to change easier

Cons:

  • Development spends more time planning, less time coding
  • Risk of releasing unviable features is heightened
  • Less time for market research and planning
  • Lack of documentation can prove challenging
  • Dangerous for mission critical projects due to iterative nature

So Which Product Life Cycle Process is Best?

Which product life cycle process is “the best”? The question really should be, which product life cycle process is best for your company. My next post will address why a company should invest in implementing a tailor-made product lifecycle process; and future posts will detail how to determine which product life cycle process is right for your company (SPOILER ALERT: it’ll most likely be a mix of the frameworks above), and how to properly roll it out to the company.

Next up in the Product Life Cycle series:

Part II: The Benefits and Risks of Implementing a Product Lifecycle Process

Part II: How to Implement a New Product Life Cycle

  • published on2, Dec, 2012
  • commentsno comments

So You Want to Implement a New Product Life Cycle

1) Find a champion. This person will clear the obstacles and lend legitimacy to your efforts.

2) Establish a need. Business case, current issues, current strengths, how a process will improve bottomline, etc.

Of course, there can be many reasons why a company would want to implement a new product lifecycle. Perhaps you just want to optimize the process you currently have. Or maybe you feel like you need something with more checks and balances. Whatever your reason, a thoughtful, well-executed product lifecycle can result in benefits you can take to the bank — the money bank.

Positive effects of a proper product lifecycle:

1) Ensure the right people are working on the right things at the right time.

2) Streamline and optimize projects. Front loading risk so less burden on Dev.

3) Guides projects.

4) Provides checks and balances.

NOTE: Common sense and judgement should always prevail — don’t let the process rule the project.

User Experience isn’t Everything

It seems the whole world has gone crazy for design lately. Engineers fancy themselves UXperts, Ad Sales is requesting PSDs to tweak, and Upper Management just doesn’t like that shade of blue.

Personally, I blame Pinterest.

Pinterest’s rapid ascent into mainstream lexicon* is enforcing the concept that the visual aspect is the only important piece of a product. Well, I’m here to tell you that that ain’t true.

Take the ‘To Do’ app Clear for example — it offers one of the most beautiful experiences available in the App Store. However, it’s also missing major features! It limits characters to an unusable minimum, there’s no indication of navigational hierarchy, the ‘down’ swipe intended to change screens constantly pulls down the iOS drop screen instead, and once you remove your completed tasks there’s no way to recover them (which is really annoying if you do it with an experimental swipe!!).

Path is another gorgeous app with insufficient use cases. The idea behind Path is that it’s the social network that limits your number of connections, thereby keeping your friend list to only your nearest and dearest. Well, that’s all well and good, but good luck trying to figure out how to post on another person’s Path! Instead of encouraging users to interact with one another, the featureset encourages them to fixate on their own Path. It quickly devolved into what Facebook began as — the pool into which Narcissus tumbled (complete with self-indulgent duckface photos to boot).

It’s been touted in the industry that 2013 is the ‘Year of Visual Web’ based on Pinterest’s continued success, redesigns by eBay that put imagery first, Facebook’s purchase of Instagram, and more. With the growing focus on aesthetics, let’s just hope people don’t forget about the features.

——————————————————————–

*A bit of an aside, but according to the New York Times, young women are driving linguistic change more than any other demographic. And ~80% of Pinterest users in the US are female. Hmm…coincidence?