We Use That / 1Password

What startups use to get stuff done

Password manager and secure wallet
Posted on 11 Aug 2012 in

Who are you, and what do you do?

I am Jamie Phelps. I am a code wrangler at AgileBits, we make 1Password for Mac, Windows, iOS, Android and Windows Phone 7.

We are a top seller in the Mac App Store and have been included on several of Apple’s promotions for productivity and security.

We have a lot of users and have been in the top 10 in Productivity and in the top 10 for Paid Apps and Overall a couple of times.

We are always looking for talented people. If you fit with the team and you are very talented, we will likely find a place for you. Our designer is worked to the bone and always overloaded so we are especially interested in designers.

What is your technology stack?

Since we have such a wide variety of platforms that we support we try to do everything in as platform agnostic a way as possible. We make heavy use of JSON and we use Rake, the Ruby make program, for automating everything from testing to deployment to updating things that are shared across different repositories.

We use Git for our version control. We use Ruby and Rails for our website.

One of our key communication hubs is Redmine, an open source Ruby on Rails project management app.

Our Github is full of open source tools we use. Lots of customizations of things like the Dropbox SDK and several open source projects.

We have been doing Behavior-Driven Development (BDD) with Kiwi in our iOS development, pretty cool stuff.

We also use Phusion Passenger to speed up our site. Our deploy times went down from two and half to three minutes to ten seconds.

Some really important projects we use are CoreWebSocket and CocoaWebSocket. WebSockets are really important for communications between our browser extensions and the 1Password helper application that runs in the background. All of that is done over WebSockets.

JQuery makes our lives much easier. We use it for the web site but we also make heavy use of it for the browser extensions. It has saved us a lot of time and headache.

What software do you use to run your business?

A big communication tool for us is Campfire. We maintain at least 3 rooms almost all the time for different groups within our team. We host with Linode and we use EC2 and CloudFront for some stuff. We also use Google App Engine for handling our update servers.

We have tried a lot of project management tools, but honestly once we got a non-ugly theme in Redmine we liked it so much better.

We use PayPal for processing paypal accounts, Discover and Amex.

We use Cerberus for our email interactions. We have been using Tender for around a year and half but it is something we are moving away from more than towards.

We use Google Analytics for website analytics.

We use Campaign Monitor for our marketing emails. We have looked at Mailchimp as well.

We are nerds so even when something is working pretty well we will keep our eyes out for what might be better.

What business software do you most wish existed?

We have been on a quest for two years to find the perfect customer support tool. We have tried Tender and Assistly and experimented with some Wordpress-based stuff. We often like a particular aspect of a tool, but we have not been able to find one that does everything as well enough to make our customers super-happy. That is our holy grail.

It has to be super clear to the users how to use it. It sounds so obvious, but we have tried systems where users were confused about what the system was. It is email, a forum, a chat room, all over the map… That is the number one thing, if you get someone coming to you for help, they are already confused, probably frustrated and in the worst case really angry. You do not want somebody trying to figure out how your support tool works when they are just trying to get an answer.

The other thing is that we have a few different support channels. We do support on our FB pages and on Twitter. Our Twitter folks are amazingly good and they have a lot of fun with it. We have all of these different avenues where people contact us but then eventually if the problem does not have a really straight forward answer, they need to be directed to one pipeline to get the best answers. Supporting those different channels and bringing it into one system is really important as well.