Cloud Personas

From FedoraProject

Jump to: navigation, search

Contents

Persona #1: Alan the AWS enthusiast

Alan was a very early AWS adopter. He writes and maintains a number of AWS-deployed applications, including staging and production, from the same data source. He needs to monitor his applications for cost, resource consumption, demand peaks and any crashes. He works for a small start-up. Puppet master. By-line: FIXME

  • Adoption curve: Innovator
  • Skills: Experienced web developer & operations guy - not on his first cloud application architecture, mastery of continuous integration (CI) and continuous delivery (CD).
  • Behavior patterns: Wants to concentrate on application development, not architecture. Change management - applying security updates to guest systems - takes a chunk of his time. He spends a little time every few months evaluating the cloud architecture to consider alternative components to increase price/performance.
  • Goals: To deliver excellent scalable web-deployed applications with a web interface and robust API for a mobile application front-end. To deliver incremental, tested updates to the applications on a regular basis.
  • Needs: Application lifecycle management, monitoring, to make his apps faster. Makes heavy use of cloud APIs and services to minimize work he has to do setting up his own services.
  • Main Tasks: Writing and deploying code. Anything that requires a significant distraction from that is a time sink, and Alan has little tolerance for mucking with infrastructure more than he has to.
  • Attitudes: Alan loves AWS. He's unlikely to consider an alternative public cloud due to dependencies on AWS services and the fact that migration would consume too many cycles that he doesn't have.
  • Beliefs: Continuous deployment is king. Automate all the things. Do the hardest things often, until they’re easy. etc.
  • Motivations: getting the code running in production
  • Frustrations: poor command line tools,
  • Environment: Macbook for development, AWS for development, testing, and production environments.
  • Interface Usage Tendencies:
    • GUI: Medium
    • CLI: Medium
    • API: High
  • Collaborates With: Alan is pretty much working alone. He may work with other folks in the start-up, but not on a daily or regular basis. His work flow is tooled specifically for his convenience.

Persona #2: Erin the Rails devops team member

Erin uses the cloud to do Ruby on Rails development utilizing virtual machines. She works as part of a DevOps team responsible for all aspects of a set of applications. FIXME more about Erin By-Line: FIXME

  • Adoption curve: Early adopter
  • Skills: Familiar with Linux systems. Several years' programming experience, comfortable with Linux and other environments.
  • Behavior patterns: Will choose from the range of available flavors of VMs to run. Will use OpenStack images to launch instances, also create and save her own.
  • Goals: To set up and use cloud guests for her application with minimal effort. Erin is focussed on the application and regards the IaaS services as resources to be used with a minimum of administrative overhead. Would prefer if her language stack were just there and just worked in the cloud guests of her choice.
  • Needs: Easy way to create cloud guests configured with the versions of Ruby and Rails used for her various projects.
  • Main Tasks: Deploying and updating code in development, testing, and production environments. Maintains the guest images used as a base in all three.
  • Attitudes: Hates it when things change just for change's sake. Wants the latest of the things her team needs, wants the rest
  • Beliefs: The development, test, and production enviroments need to be identical.
  • Motivations: provisionning environments quickly and easily
  • Frustrations: lacking guest images preconfigured with her application framework
  • Environment: Linux development system. Primarily launches cloud instances via the OpenStack GUI. Part of a devops team which manages the a small OpenStack deployment for their own use. Some else in her group has primary responsibility for managing the IaaS layer, but she can pitch in with a basic understanding if need be.
  • Interface Usage Tendencies:
    • GUI: Medium-High
    • CLI: Medium
    • API: Low
  • Collaborates With: Other members of her development and production operations team.

Persona #3: Walter the Web Developer

Walter develops feature rich HTML5 applications using Symfony and Twitter Bootstrap, and a range of other web technologies. He has no real system administration skills, and develops on a single desktop computer or his MacBook. Walter wants the app to Just Work when he’s finished, and doesn’t really think a lot about caching, sharding, proxies, or making his app scalable. He works in a medium sized development shop which has people who take care of deployment and change management to the web applications he produces. By-line: “Not a bug: Works for me”

  • Adoption curve: Early majority (Early adopter for web technologies)
  • Skills: PHP, Ruby, Python, Javascript, CSS, multiple MVC frameworks, experienced Linux & MacOS X user (but not admin), comfortable setting up LAMP, github.
  • Behavior patterns: Wants to concentrate on application development, not architecture. Spends most of his time in TextMate, and testing how app behaves and looks in VirtualBox.
  • Goals: To deliver excellent web applications and robust RESTful API for mobile apps.
  • Needs: Up to date application development stack, good developer tools, someone to actually deploy his app.
  • Main Tasks: FIXME
  • Attitudes: Walter would like to know more about the cloud but there’s so much to learn, he has no real idea where to start, and just keeping on top of new web development trends takes all his research time.
  • Beliefs: FIXME (is this right?) “This stuff should be easier to get a handle on.”
  • Motivations: FIXME
  • Frustrations: FIXME
  • Environment: Macbook for development, a Linux desktop for test deployment, VirtualBox for testing on different browsers.
  • Interface Usage Tendencies:
    • GUI: High
    • CLI: Low
    • API: Low
  • Collaborates With:

Persona #4: Martina the Senior Sysadmin

Martina is a senior systems administrator at a large university. She has to manage more systems than she really has time for, and much of her time is interrupted by requests from grad students and other members of the university for resources. The IT department has some automated systems for deploying new sites with Drupal, Wordpress, MediaWiki or the like, but it needs to be done by hand. Martina's group has recently deployed an OpenStack environment, allowing some groups to provision virtual machines by themselves. This is some help, but is a level too low to take care of most users' real needs. She's interested in taking this one step further and providing a full Platform as a Service offering. By-line: "I could automate this, if I weren't so busy."

  • Adoption curve: Early adopter
  • Skills: Shell scripting expert, hacks at Python, Perl, and just about anything else. Good at putting all the parts together.
  • Behavior patterns: Would like to work on interesting emerging technologies that she believes will really help her employer and her users, but keeps getting interrupted by break/fix and user help requests.
  • Goals: Provide a self-service application infrastructure for users.
  • Needs: Robust deployment tools, simple automation stack, ability to rapidly provision large number of hetergenous systems at once, and then efficiently monitor and change them.
  • Main Tasks: Provision new systems on both the public cloud and the private OpenStack cloud her company runs. Work with developers to deploy code as often as possible.
  • Attitudes: FIXME
  • Beliefs: “Whenever a sysadmin has to interact with a user directly, something has gone wrong”
  • Motivations: FIXME
  • Frustrations: FIXME
  • Environment: Fedora on her desktop, Android on a phone
  • Interface Usage Tendencies:
    • UI: Low
    • CLI: High
    • API: Medium-Low
  • Collaborates With: Developers, junior administrators, CTO, finance organization

Persona #5: Sarah the Data Scientist

Sarah is a data scientist in a biotech startup. She works with large data sets and intends to process them with map-reduce. She plans to test this in her office and then scale out to local cloud resources and to spot instances in Amazon EC2 By-line: "Crunching a large set of data, get it done and done efficiently"

  • Adoption curve: innovator
  • Skills: Python, Scala, Octave, R, Hadoop, Cassandra, and Pig.
  • Behavior patterns: Most interested in results, but not afraid of tackling new technology to get there.
  • Goals: Process data quickly and efficiently, at the lowest cost possible. Since Sarah is potentially working with medical data, she cares about data strorage, retention policies, and ethical issues around her data - not just reliability and cost.
  • Needs: Reliable images with the latest improvements in her toolchain. Does not want to compile her own Hadoop, Pig, Mahout, etc.
  • Main Tasks: collecting/crunching data, creating visualizations from data, managing data storage/retention.
  • Attitudes: she cares about performance and is energy-conscious. Cares about security and the ethics of data management.
  • Beliefs: "The tools are only a means to discover interesting scientific and user data"
  • Motivations: FIXME
  • Frustrations: FIXME
  • Environment: Fedora on her workstations, CentOS servers in the data center (including an OpenStack deployment), uses public clouds like Rackspace, the HP cloud, or AWS spot instances to spin up many servers at once for a short period of time, a Mac laptop
  • Interface Usage Tendencies:
    • GUI: Medium
    • CLI: Medium
    • API: Medium
  • Collaborates With: Other researchs and scientists, lab technicians, HPC techs, more 'pure' developers

Persona #6: Jody the HPC Scientist

Jody is a researcher at a major university. She previously used grids to solve meteorological simulations using batch schedulers (SGE, Torque). Since she needs to run many parallels simulations, she thinks about using cloud ressources for temporary infrastructure overflow. By-line: "I need a bunch of machines to run my computational tasks, cloud or not."

  • Adoption curve: Early majority
  • Skills: Shell, Python, Fortran
  • Behavior: Most interested in results, but not afraid of tackling new technology to get there.
  • Goals: Run her computational tasks
  • Needs: access to distributed filesystems (NFS, GlusterFS)
  • Main Tasks: Designing experiments and running them
  • Attitudes: She is not a computer nerd, but someone who likes to get things done
  • Beliefs: "The tools are only a means to validate my theories and give them real-life applications"
  • Motivations: FIXME
  • Frustrations: FIXME
  • Environment: Fedora on her lab workstations, CentOS servers in the university data center (including an OpenStack deployment), uses public clouds like Rackspace, the HP cloud, or AWS spot instances to spin up many servers at once for a short period of time, a Mac laptop
  • Interface Usage Tendencies:
    • GUI: Medium
    • CLI: Medium
    • API: Medium
  • Collaborates With: other scientists, few research engineers (sysadmin or developers)