11 principles for digital gurus to live by
There’s no specific methodology or magic formula for successfully creating online experiences. No single linear path to follow that guarantees outcomes. That’s because the work we do is inherently unpredictable. There will always be change — when’s the last time you had a technology project where everything went exactly as planned? I’ll wait while you muse it over.
From small requirement tweaks to new deadlines to entirely new technology restrictions, our success is driven by how quickly and seamlessly we can pivot to solve problems.
The best way to encourage success? Prepare for the unexpected by creating oodles of options, so you don’t get trapped in a corner when change moseys on over. Increase the options at every turn so you have choices when the unthinkable materializes — which is really applicable to just about any industry (or life in general, if you want to get philosophical about it).
At Flexion, we’ve spent a lot of time thinking about how to not only create options, but make them central to the work we do (heck, even this Medium article is an option we’re experimenting with!). The key to our success can be summed up with 11 fundamental principles, each of which builds options in different ways. So whether we’re modernizing a dinosaur mainframe system or creating innovative ways to share insights on artificial intelligence, we’re able to remain flexible and responsive when change is a’comin’.
1. Embrace diversity
This one’s a bit obvious. The more diverse the ideas, experiences, and people you bring to the table, the more options you’ll have to choose from. Homogeneity is the antithesis of options. This is especially important to apply to opinions — we encourage respectful disagreements and expect honesty from others so we can collectively bring the best options to bear.
2. Separate the what from the how
First you define what the goal or problem is. Then you explore options to solve it. If your solution is already part of your problem statement, you’ve cut out a multitude of possible solutions — one of which may be significantly better than what you first came up with. When the country was scrambling for sanitizer early this year, no one was asking “How can we get breweries to manufacture sanitizer,” right? An innovative solution emerged because we left the options open.
3. Collaborate
You can’t always have the best idea in the room — that is, unless you’re the only person in the room. We avoid this paradox by having many people in the room (or Zoom, in this case). We pair throughout the day to solve problems across disciplines, so it’s not little cliques of front-end devs or UX designers chatting amongst themselves. We get many ideas all coming from different perspectives (extra credit for diversity!), which is what’s going to produce the best options.
4. Design as you go
As a designer, this was the hardest thing to embrace (but I’m a full-fledged convert now). You can’t effectively design (or develop) for what you don’t know. And you don’t know what you don’t know. So the only thing you can effectively do is focus on the thing right in front of you — the problem you’re solving right now, not the one that may come a few weeks or months from now. Otherwise, you wind up wasting time creating for a future that never comes to pass.
5. Never compromise on quality
This is a trap so many of us succumb to when backed up against a deadline. Skip the testing. Skimp on security. Skirt accessibility requirements. So instead of thinking of these as “things to do later” — which puts them at risk of never getting done — we include them as a core part of each thing we create (as part of our Definition of Done, if you want to get specific). We also proactively eradicate design and technical debt. Because when you’re working with clean, complete code, it’s easier to make changes without breaking a fragile system. You also create more time to explore options instead of fixing broken things at the last minute.
6. Minimize and simplify
The first question we ask with any user story or requirement is, “What’s the simplest thing we can build that accomplishes the goal?” Not what’s the best. Not what’s the most innovative. It all starts from simple, and we build from there. As we ideate on solutions, we ask “Does that have to be there in order for the goal to be met?” Bells, whistles, gravy — all out the window to start. Once the simple is in place, it’s a lot easier to pivot as new ideas and information come into play, which is when innovation can emerge.
7. Listen with humility
Having empathy isn’t just reserved for product users. We need to have it for our stakeholders, our team, our clients, our colleagues. This starts with listening. If we’re not truly listening, we’re not really open to options that didn’t start in our own heads. There’s no room for that kind of ego in a successful agile team.
8. Empower customers
The only way to really know if something works is if the people using it tell you it does. We aim to put functioning products in front of users as fast as possible, so they can get us feedback as fast as possible, which opens up new options for the product. There’s nothing that pushes a project off track faster than discovering the thing you’ve spent the last year building is of zero actual interest to users.
9. Never stop learning
There are changes to our industry every day. The tools we use. The guidelines we follow. The emerging tech. You must have a hunger to learn or you’ll soon render yourself irrelevant. Our teams are constantly learning, expanding their skills and knowledge to better contribute to the project. And if there’s something that no one knows how to do, someone will volunteer and figure that thing out.
10. Own it!
Let’s be real — we’re too old and tired to babysit. Everyone needs to be able to take initiative and responsibility for their own work, while maintaining the ability to ask for and offer help when needed. This also means we own up to our mistakes, which allows us to keep exploring options until we get it right.
11. Be skeptical and curious
We’re like 4-year-olds, always asking, “Why?” You have to understand what problem you’re trying to solve before you can devise a useful solution. Uncovering root causes means we not only can create more options to solve the problem, but it helps ensure we’re solving the right problem.
These fundamentals are the backbone of our company culture — the thing that allows us to build solutions that meet the needs of both users and stakeholders. In fact, these fundamentals are the primary things we screen for in our recruiting efforts. We’ve found that folks who design by these principles are the ones who are successful here — who create innovative solutions that allow us to pivot quickly as the situation changes, so we can deliver exceptional digital experiences each and every time. Because there’s no other option when it comes to that.