Technical Writer

Puppet Labs
Apr 26, 2013
May 26, 2013
Full Time
Technical Writer

Department: CTO Office
Reports to: Chief Technology Officer
Location: Portland, OR

Summary of Role

Puppet Labs is hiring an experienced Technical Writer who can harvest information about user workflows and software functionality to create and maintain a wide variety of technical documentation. At Puppet, we don't believe in just hucking specs over the wall into the writer's cell. Our tech writers work side-by-side with our Engineering, UX, and Marketing teams, as well as our global Puppet community, in order to create an experience that delights and amazes our users.


Excellent writing skills; ability to generate bright, compelling technical copy

Fastidious editing and revision skills

Ability to learn complex, highly abstract things, combined with the ability to directly verify technical information

Proven ability to harvest information from subject matter experts via high-level communication and interview skills in multiple environments (email, chat, face-to-face, etc.)

Ability to generate new language and concepts as needed to describe products, functions, and features

Demonstrable success in education of/knowledge transfer to expert audiences

Complete comfort and ease working with software and other digital technology

An understanding of the documentation needs of various audiences: new users, experienced users, developers, new developers, etc.

Preferred but not required:

BA or higher in English, Communications, Philosophy, Literature, Rhetoric/Composition or related area of study.

Command-line/shell experience on a UNIX-like platform and/or experience as sysadmin.

Experience with a version control system such as Git, SVN, CVS, or Perforce.

High-level web development experience with tools such as Markdown, web servers, templating systems, HTML/CSS/JavaScript.

Application Instructions

Please include a cover letter along with your application and resume that describes why you are interested in working for Puppet Labs and, more specifically, summarizes how your experience fits each of the aforementioned qualifications. In addition, please complete the screening tasks detailed below and submit them as part of your cover letter OR by emailing directly to Please note, Jobscore does not allow for extra attachments beyond a cover letter and resume.

1. Copy Editing

Proof and copy edit the paragraph below.

Extra credit: use a diff tool to compare the paragraphs and send us a screenshot of the results.

Parameterized classes are still pretty new - they was only added to Puppet in version 2.6.0 -, and they changed the landscape of puppet in some ways that aren't immediatly obvious.

You probably notice that the examples this chapter, are all using the resource-like declaration syntax instead of the include function. Thats because include doesn't work with parameterized classes, and likely never will. The problem is than the whole point of include conflicts with the idea that a class can change depending on how its declared - if you declare a Class multiple times and the attributes don't match precisely, which set of attributes wins?

Parameterized classes made the problem with that paradime more explicit, but it already existed, and it was possible to run afoul of them without even noticeing. A common pattern for passing information into a class was to choose an external variable and have the class retrieval it with dynamically-scoped variable lookup If you're were also having low-level classes manage their own dependencies by including anything they might needs, than a given class might have several potential scope chains resolving to different values, which would result in a race - whichever include took effect first would determined the behaviour of the class.

2. Writing Sample

Pick two of the below tasks and write a page or so for each one. Please feel free to format or structure your document in whatever way best communicates your information.

These are not trick questions.There is no hidden agenda. All of the choices below are equally valid. You should take each question at face value.

Explain to my mom how to use Google to search for info about her hometown of Orleans, France. Keep in mind that the last keyboard my mom used was a typewriter. She has never used the internet.

Explain the function and components of one of the following: tennis shoes, Linux initial RAM disk, a bicycle, a toilet, a toaster, bash shell config files. We're not looking for instructions on how to use one of those things, we want to know what the thing is built from and what the functions of those components are.

Write three possible use-cases for a fortune cookie. Give a high-level overview instructing users in how to accomplish each use case.

Describe making the perfect cup of coffee or tea. (Tips, tricks, warnings. Whatever method you like.)

Create a README for setting up a Gmail account with Thunderbird (what does this program help with, how do I set it up and use it?)

Explain the SSH authentication process for standard password authentication between two hosts for the first time.

Working for Puppet Labs

Based in Portland, Oregon, Puppet Labs creates IT automation software which enables system administrators to deliver the operational agility and efficiency of cloud computing at enterprise-class service levels, scaling from handfuls of nodes on-premise to tens of thousands in the cloud. Puppet powers thousands of companies, including Twitter, Yelp, eBay, Zynga, JP Morgan Chase, Bank of America, Google, Disney, Citrix, Oracle, and Viacom. Our investors include Kleiner Perkins Caufield & Byers, True Ventures, Radar Partners, Emerson St. Partners, VMware, Google Ventures, and Cisco.

Everyone who works at Puppet Labs has a direct impact on the company. The work environment is relaxed yet results-driven, encouraging creativity and collaboration. The list of interesting and difficult challenges will always be larger than the time to tackle them, and the community culture fosters continuous improvement. Puppet employees embody our values, displaying curiosity, self-motivation, adaptability, and a passion for what Puppet is all about.

Puppet Labs employs staff in areas including Development, Professional Services, Operations Engineering, Solutions, Marketing, Sales, Finance, HR, and Administration. We offer awesome benefits and perks to our employees, including health insurance, flexible spending accounts, 401(k), paid time off, stock options, casual dress code, flexible work hours, free snacks & drinks, in-office bike rack, a dog-friendly work environment and much more.