How to Work with Engineers - A Cheat Sheet for Designers

文章要點(diǎn):

  • 認(rèn)識(shí)到工程師是將想法轉(zhuǎn)化成現(xiàn)實(shí)的轉(zhuǎn)化器
  • 只需要讓一兩位工程師相信你,你就可以將原本無(wú)用的想法變成現(xiàn)實(shí)
  • 如果工程師能欣賞你的設(shè)計(jì)府树,那么一切都會(huì)變得很簡(jiǎn)單
  • 了解計(jì)算機(jī)編程的極限
  • 幫助工程師在任何時(shí)候了解最終的產(chǎn)品會(huì)變成什么樣子
  • 坐的離工程師近一點(diǎn),再近一點(diǎn)
  • 完善自己的產(chǎn)品料按,應(yīng)該考慮到
    1. 產(chǎn)品是否國(guó)際化奄侠;
    2. 產(chǎn)品的錯(cuò)誤提示,例如網(wǎng)絡(luò)連接丟失载矿,數(shù)據(jù)庫(kù)出錯(cuò)等垄潮;
    3. 用戶使用的一些極限情況;
    4. 考慮屏幕適配闷盔;

Once, a long time ago, I was a product manager. Then, I was an engineer. For the past seven years, I’ve been in design. Every single day, I work with people in all of these roles. Every single day, I find new ways to appreciate the responsibilities, challenges, and art behind each of these three pillars of product development. Engineers are the magicians[英倫魔法師] of the crew, who, with a few taps of their fingers, take the plans and the pixels and Voila! A working implementation. As a designer, how do you best keep up with their meme-savvy, self-deprecating[自貶的弯洗;自謙的], script-loving ways? Keep reading.

Engineers are the translators of ideas into reality.

Engineers make every good proposal real, and this fact should never, ever be forgotten. Even if your company has five, or five hundred, or five thousand engineers, engineers are not a ‘resource’. They are the builders of the foundations, the keepers of everything that makes your product tick. They make it work. They make it work fast. They make it robust[強(qiáng)健的] and reliable and scale it to millions and billions of users. Generally, it’s the engineers who innovate[改革創(chuàng)新], who push technology forward with new algorithms, who make sense of the trillions of inputs available and turn those into some semblance[外表] of meaning.

All this is to say: engineers are the shit.

Which means…

Want to make stuff[無(wú)用的想法] happen? All you need to do is just convince one or two engineers.

Really, that’s all it takes. Many a legendary product story starts this way: a couple friends, a weekend, a few cans of beer, some hacking. The PM comes later. Managers come later. Start with the basic building blocks—an idea, a design, and an implementation. That’s why it pays to have close ties with engineers.
Or, imagine this scenario[劇本]: some small part of your product irks[厭倦] you. Like reallyirks you, in an itch-in-an-inconvenient-place kind of way. Something about the design is just plain[純粹的] wrong. What should you do?

A. Bring it up at your next team meeting where it’ll get put on a list to be prioritized by a team that triages those sorts of things so they can assign it to some future engineer after she’s joined and needs a couple ‘practice’ tasks to get through.

B. Be pretty tight with an engineer and walk over to her desk. Ask her to spend 5 minutes fixing the thing. Watch her submit the diff. (Possibly you may need to barter[物物交換] a t-shirt design for her 80s cover band or something, but you are a pro with Illustrator.)

Guess which version gets your thing fixed the fastest?

That said…

Things go easier if the engineer you’re working with appreciates the value of good design.

It’s amazing when you’re working with an engineer who knows how to fill in the blanks on a mock without asking you about every little detail because even though you forgot to specify how many pixels are in the margins, she opened Photoshop and measured it herself. It’s incredible when she throws in a suggestion that makes the design even better. It’s stupendous[驚人的] when, after she’s done implementing the first pass, the implementation looks virtually indistinguishable[不能區(qū)別的] from the mock, that’s how precise and detailed she is.

How do you work with such engineers? Well, you can hire them. Lucky for you if you can, because awesome UI-oriented engineers are in high demand.

Or you can help every engineer you work with develop an appreciation for good design. How? Don’t just throw mocks over the fence—explain what you’re doing. Teach them about your values, and why you think the design you’re proposing is worth building. Help them learn how to tell if their implementation matches the mock exactly. Talk to them about what’s going on in your head when you say something looks bad.

The relationship building matters here. People shift their values and priorities based on conversations with other people. It’s an old-school but effective way to do things. (“Slow Ideas” from the New Yorker is a thoughtful, excellent read about this strategy.)

Plenty of engineers don’t come to the table with an eye for design details, but most care about the user experience and want to make it better. I’m not saying every engineer will enjoy doing detailed UI work, but it always helps to expand on the why of a design.

Because the more excited an engineer is about a design—the more they understand its rationale and see its value—the quicker and better it’ll be implemented.

Save yourself time; understand engineering constraints[限制] early.

As designers, it’s easy to get wrapped up in the world of what-ifs. What if we could read your mind here and know exactly what you wanted to see and showed it to you? What if when you tapped on this button, it explodes into a flurry of particle effects and fire?

Don’t go through the heartache of falling in love with a design that’s out of the question because you didn’t understand the technical or time constraints early enough. (And even if it is a design that’s worth going to bat for, your case is going to be much stronger if you do understand the constraints.) The worst thing that can happen is that you spend your time perfecting a design that has no chance of working out. Good designers are scarce enough as is, and there are enough big problems that we don’t need that kind of inefficiency.

So the next time a brilliant idea possesses you but you have a sneaking[機(jī)密的] suspicion[猜疑] that it might be hard to build, don’t wonder. Ask the engineer.
The inverse of this holds as well…

Save the engineers time; help them understand how final the design is at any given stage.

If you give an engineer a design to build but you’re not confident how well it’ll work out until you get to play with the implementation, make sure you let them know that there’s a good chance things will change. Nothing is more annoying to engineers than staying up all night to finish an implementation only to get a memo in the morning that Whoops! The whole design has been transformed! And now they’ll have to throw away all that production-quality code they put painstaking attention into.

Of course, no engineer writes code that never gets thrown away. It’s part of the job, same as design. Good engineers understand that the product development process is messy[麻煩的], and we don’t always know what’ll work until it’s real. Stuff will get changed. Designs will get redesigned. But setting context on what pieces are still exploratory and what pieces are locked down helps engineers figure out how to architect code that is either faster to write or more flexible to modify later.

The best way to ensure designs are implemented as intended is to work extremely closely with the engineer.

Like, sit right next to them when stuff is getting implemented. I can’t overemphasize how much easier it is to make sure everyone’s on the same page when folks are sitting in the same room. Issues surface and get dealt with much faster.

It’s easy to cast blame when the end product is not something that everyone’s proud of. Oh, my mock was great, but the engineer didn’t implement it correctly. That’s poisonous thinking right there. You, the designer, own the product that goes out to users, not the Photoshop mock on your computer. If something wasn’t implemented correctly, why didn’t you do something about it? Why didn’t you ask the engineer to show you the implementation right after she finished it so you guys could go over it in detail? Why didn’t you check in during the building phase to see if she had any questions about the design? Why didn’t you file a task for her to fix the bug after you saw it?

That’s right. Own it.

The quickest way to an engineer’s heart is to be complete with your designs.

It’s kind of funny that the word ‘detail-oriented’ is thrown around to describe designers when in fact most design specs miss numerous cases that end up being identified by engineers who have to implement all the branching paths.

Want to be a design hero for engineering? Make sure your design solutions are complete and consider edge cases like:

  1. Internationalization: what does this design look like in another language? Notably German with its layout-threatening long words?

  2. Error states: what happens when network connectivity is lost; databases crash, etc?

  3. User extremes: what does this page look like if the user using this has no information or activity? What about if the user has tons and tons of information or activity?

  4. Transitions: what is the precise[精確,恰好] way that screen A becomes screen B? Good tools are mighty helpful here, as described in How to Survive in Design (and in a Zombie[行尸走肉] Apocalypse[世界毀滅逢勾;圣經(jīng)新約之《啟示錄》牡整;天啟;大災(zāi)難]).

Not only does designing the above cases inspire confidence that you’ve actually thought through everything holistically, but they help engineers plan out how to architect the system, and give proper estimates[估計(jì)] for how long things will take. Not to mention, complete designs prevent last minute scrambles[混亂] to put together shoddy[劣質(zhì)的] blank states because nobody caught them until it was too late to do something better.

So be a good citizen. Make sure your designs are complete. Don’t just design for some idealized use case. Get out of mock-fantasyland. As every engineer knows, what counts at the end of the day is what ships.

轉(zhuǎn)自@joulee

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末溺拱,一起剝皮案震驚了整個(gè)濱河市逃贝,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌迫摔,老刑警劉巖沐扳,帶你破解...
    沈念sama閱讀 211,194評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異句占,居然都是意外死亡沪摄,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門纱烘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)杨拐,“玉大人,你說(shuō)我怎么就攤上這事凹炸∠吩模” “怎么了?”我有些...
    開封第一講書人閱讀 156,780評(píng)論 0 346
  • 文/不壞的土叔 我叫張陵啤它,是天一觀的道長(zhǎng)奕筐。 經(jīng)常有香客問(wèn)我,道長(zhǎng)变骡,這世上最難降的妖魔是什么离赫? 我笑而不...
    開封第一講書人閱讀 56,388評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮塌碌,結(jié)果婚禮上渊胸,老公的妹妹穿的比我還像新娘。我一直安慰自己台妆,他們只是感情好翎猛,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評(píng)論 5 384
  • 文/花漫 我一把揭開白布胖翰。 她就那樣靜靜地躺著,像睡著了一般切厘。 火紅的嫁衣襯著肌膚如雪萨咳。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,764評(píng)論 1 290
  • 那天疫稿,我揣著相機(jī)與錄音培他,去河邊找鬼。 笑死遗座,一個(gè)胖子當(dāng)著我的面吹牛舀凛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播途蒋,決...
    沈念sama閱讀 38,907評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼猛遍,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了碎绎?” 一聲冷哼從身側(cè)響起螃壤,我...
    開封第一講書人閱讀 37,679評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤抗果,失蹤者是張志新(化名)和其女友劉穎筋帖,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體冤馏,經(jīng)...
    沈念sama閱讀 44,122評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡日麸,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了逮光。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片代箭。...
    茶點(diǎn)故事閱讀 38,605評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖涕刚,靈堂內(nèi)的尸體忽然破棺而出嗡综,到底是詐尸還是另有隱情,我是刑警寧澤杜漠,帶...
    沈念sama閱讀 34,270評(píng)論 4 329
  • 正文 年R本政府宣布极景,位于F島的核電站,受9級(jí)特大地震影響驾茴,放射性物質(zhì)發(fā)生泄漏盼樟。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評(píng)論 3 312
  • 文/蒙蒙 一锈至、第九天 我趴在偏房一處隱蔽的房頂上張望晨缴。 院中可真熱鬧,春花似錦峡捡、人聲如沸击碗。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)稍途。三九已至雷猪,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間晰房,已是汗流浹背求摇。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評(píng)論 1 265
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留殊者,地道東北人与境。 一個(gè)月前我還...
    沈念sama閱讀 46,297評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像猖吴,于是被迫代替她去往敵國(guó)和親摔刁。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • **2014真題Directions:Read the following text. Choose the be...
    又是夜半驚坐起閱讀 9,429評(píng)論 0 23
  • PLEASE READ THE FOLLOWING APPLE DEVELOPER PROGRAM LICENSE...
    念念不忘的閱讀 13,441評(píng)論 5 6
  • 此刻,突如其來(lái)一陣心酸 看完一段講述關(guān)于救助香港困難戶的短視頻后党窜,在我眼中拗引,看到的就是那些為了解救困難戶三餐的慈善...
    雯芷閱讀 181評(píng)論 0 0
  • 出門的這幾天讓我感觸最大的一件事情就是幸福力矾削。出門第一天讓自己整個(gè)身心都感受到放松,僅僅是想做什么做什么豁护,其實(shí)就是...
    高藝菲Sophia閱讀 333評(píng)論 0 0
  • 我想問(wèn)問(wèn)哼凯,人,究竟是怎么樣楚里?可能有些人會(huì)回答人類是善良的断部,是偉大的,但請(qǐng)?jiān)试S我說(shuō) :如果沒有人類班缎,這個(gè)世界將不會(huì)發(fā)...
    冷酷爵士閱讀 233評(píng)論 0 0