«Мы не имеем права кодить, не приходя в сознание». Кто такой Firmware-инженер и как им стать

Компания Softeq Flash Solutions, R&D центр южнокорейской корпорации SK Hynix, разрабатывает firmware для flash-карт мобильных телефонов и SSD. Сейчас она ищет в команду firmware-инженеров. Dev.by пообщался с руководителем отдела Software Quality Engineering Сергеем Глебовым и узнал, чем занимаются «фирмварщики» и почему это сложнее веб-разработки.

Если не произойдёт атомной войны, то рынок устройств для хранения данных продолжит расти

Чтобы рассказать о романтике FW-разработки, логично будет начать с разговора о рынке и отрасли в целом. Сейчас рынок устройств хранения данных условно поделен на 3 части — старые «механические» HDD, устройства на базе NAND-памяти (SSD, flash-карты), прочая экзотика типа лент для резервного копирования, оптических дисков и иже с ними. Причём доля SSD растет.

Суммарная ёмкость SSD-устройств также постоянно увеличивается, графики в открытых источниках говорят об удвоении каждые два года. Я ежегодно езжу на конференцию Flash Memory Summit, там каждый раз жонглируют статистикой о приросте и составе суммарного мирового объёма данных, хранимых человечеством. Так вот — этот объём сейчас составляет в районе 15 зеттабайт (миллиардов терабайт), причём, что ожидаемо, это не что-то высоконаучное, а видео, селфи с котиками, порнография в конце концов. Всё это надо где-то хранить.

В общем, если не произойдёт атомной войны, то рынок устройств для хранения данных продолжит расти. В будущем, вероятно, ещё скажется тренд на ИИ. То, с чем сейчас работают люди, — это маленькие и глупые нейросети, но скоро они станут умнее. И количество данных, которые используются для обучения, сильно увеличится.

Как продать SSD-диски какому-нибудь гиганту?

В нашей отрасли нельзя просто выпускать SSD и продавать их через магазины.

Расходы на разработку таковы, что продажа в розницу просто не окупается. Чтобы заработать, нужно продать продукт какому-нибудь гиганту. Например, производитель собирается выпустить новый лэптоп и устраивает конкурс среди поставщиков, чтобы выбрать для него SSD. Причём устройства должны быть именно с теми характеристиками, которые указаны в спецификации, не лучше и не хуже. И нам необходимо попасть в заданные рамки: производительность в разных режимах, надёжность, ёмкость и пр.

SSD проходят достаточно жёсткое закрытое тестирование у заказчика: их «жарят» и «морозят» в печах, специально предназначенных для отработки температурных режимов, читают и записывают большие объёмы данных, многократно отключают и вновь включают питание, проверяют соответствие спецификации. Всё это длится минимум месяц.

О том, что именно с нашими накопителями делают, мы обычно не знаем — тесты никто не раскрывает.

Самый сложный момент: тебе принесли «трупик» диска, как именно над ним надругались — не сказали, нужно понять, в чем проблема и исправить её. Для этого нужно быть не только башковитым, но и иметь крепкие нервы: срок на исправление проблемы ограничен, а простыми они не бывают. А ещё — именно решение таких проблем даёт совершенно фантастический драйв.

Кто же такой «фирмварщик»?

Firmware-инженер — это программист, работающий с микроконтроллерами. Он не три метра ростом, у него нет копыт и рогов, он не дышит огнём, разве что иногда.

Но «фирмварщик» взаимодействует с драйверами и с самим «железом», поэтому у него должны быть навыки работы с электроникой, в идеале — опыт её проектирования и глубокое понимание логики работы устройств, того, как происходит взаимодействие на сигнальном уровне. Это не является необходимым условием для написания кода. Но для того, чтобы код был хорошим, не лишним будет понимать, что творится «под капотом».

Если софт зашит в устройство, то поиск в нём ошибок и отладка затрудняются. 

Поэтому у нас значительная часть тестов крутится на симуляторе (разработкой которого занимается команда Software Quality Engineering), так ведь проще — больше доступа «в кишочки», любую проблему можно воспроизвести столько раз, сколько необходимо. Но далеко не всё можно воспроизвести в симуляции — многое отлаживается непосредственно «на железе». И тут начинается веселье. Например, записать лог происходящего — уже проблема. Свободной памяти совсем немного, а чтобы надёжно сложить лог в NAND-память надо, по сути, написать независимую от проверяемой прошивки функцию записи. А это, в итоге, выливается в небольшой самостоятельный продукт. При этом с подключенным отладчиком или записью лога проблема может и вовсе не воспроизвестись.

Разработка flash-накопителя достаточно большой и трудоёмкий проект. Только в прошивку вкладывается 50 и более человеко-лет, а еще не менее сложная разработка контроллера, NAND и программных инструментов. Причём в силу специфики NAND-памяти код этот непрост: чтение/запись идут параллельно в несколько потоков, износ нужно «размазывать» по всем ячейкам NAND равномерно, большие усилия тратятся на поддержание целостности данных: из-за миниатюризации ячеек нежелательные «утечки» заряда — это не ошибка, а рабочий момент. В результате помимо пользовательских данных необходимо хранить таблицы размещения блоков, счётчики износа, коды коррекции ошибок и много чего ещё.

И вот, пытаясь сделать устройство немного быстрее, вы начинаете держать часть этих данных в оперативной памяти, постепенно записывая в NAND. Тут приходит «бабушка Клава» и выдёргивает вилку из розетки. Культурно это называется Sudden Power Off — Внезапная Потеря Питания. Естественно, подразумевается возможность «воскреснуть» после такой процедуры, да ещё и потерять только те данные, которые протокольная спецификация позволяет потерять. Время, выделенное на воскрешение, также ограничено спецификацией, трёх дней нет.

Фото: SFS

Несмотря на то, что производство «флэшек» — бизнес очень дорогой (компаний, которые производят собственный NAND, в мире нет и десятка), конкуренция жёсткая. Она идёт сразу в нескольких измерениях — стоимость, скорость линейной записи, IOPS (количество операций в секунду). Соответственно, идёт постоянная оптимизация — производительности, размера кода, размера используемых данных. Разработчик должен хорошо понимать, во что скомпилируется сишный код прошивки, как располагаются в памяти данные, иметь хорошее представление о структурах данных и алгоритмах. Мы не имеем права кодить, не приходя в сознание.

Исправление ошибок, обнаруженных после выхода в production — отдельная интересная тема для разговора. Теоретически можно выложить новую прошивку. Практически можно более-менее гарантировать её загрузку только в случае enterprise клиента — когда есть какой-то централизованно администрируемый дата-центр, например. Плюс — новая версия прошивки тоже должна пройти квалификационные тесты — это небыстро и недёшево.

Кроме изменяемой части прошивки, есть ещё и ROM-код. Его главная задача — прочитать прошивку из NAND и запустить её. Естественно, ошибка в нём может привести к окончательному «окирпичиванию»  устройства, когда потребуется его замена, поэтому эта часть тестируется особенно тщательно.

А если я тоже хочу?

Рынок Firmware-разработки «нетолстый», поэтому найти специалистов сложно. Часто люди приходят в софтверный отдел, изучают там предметную область и переходят к firmware — так проще «втянуться». Софтовые проекты на SFS разрабатываются на С#, С++ и Python. Cама «фирмварь» пишется на чистом С.

Меня часто просят посоветовать, что почитать. Я считаю, что не существует книг, начитавшись которых вы сразу станете хорошим специалистом. Общий постулат «без практики вы никто» применим и здесь. Теория обязательна, но, прочитав книгу о беге, вы не сделаетесь хорошим бегуном. А вот подкреплённый книгами хобби-проект способен очень сильно приблизить вас к цели.

Тем не менее очень рекомендую к прочтению «Искусство программирования» Дональда Кнута, «Язык программирования С»  Кернигана и Ритчи, для софтварщиков — «Язык программирования С++»  Бьярна Страуструпа. «Дисциплина программирования» Дейкстры определенно скучнее постов на хабре и stackoverflow, но содержит много интересных мыслей.

Из практического материала для «хобби-проектов» — сейчас очень много можно сделать на базе китов на STM32 — они дешевы, доступны и просты в освоении. Вообще, мы с большой охотой берём сильных алгоритмистов, даже если они не имеют представления о железе.

Специфика SFS

Обо всём не рассказать в рамках короткой статьи, но можно остановиться на основном факторе, который определяет выстраивание отношений внутри нашей компании: проекты у нас длятся по году-два (это не время жизни проекта, это время между релизами), срок крепкого вхождения в предметную область на многих позициях — полгода-год. Поэтому мы играем не в короткую, а в длинную: инвестируем в сотрудников, проводим всевозможные курсы — как внутри компании, так и снаружи — хорошему специалисту надо помочь «вызреть».

Ответы на вопросы вы можете получить, написав письмо sergey.glebov@sk.com, своё резюме присылайте на sfs.hr@skhynix.com.

 

Фото: Андрей Давыдчик

 

Материал подготовлен при поддержке компании Softeq Flash Solutions.
Что такое
партнёрский материал?

 

УНП 192263000

Источник: dev.by
Новые комментарии

Обсуждение

Missing

Обожаю, когда Кнута рекомендуют почитать. Сразу ясно, что тот кто рекомендует его в лучшем случае только листал :)

Cba37fea0e181555299cefd0862747a7?1510862235
+9

Вот читал как раз-таки :-)

И да, чтиво нелегкое, особенно в доказательной части. И что с того?

Missing
+1

Сколько у вас заняло это времени? Просто интересно.

Cba37fea0e181555299cefd0862747a7?1510862235
+3

Ну третий том я прочел первым, в, кажется, 2001 году. Потом, сильно позже, дочитывал 1 и 2. За вышедший кусок 4 еще не взялся.

Так что можно сказать что годы, годы потрачены!

Picture_1216?1356409833
AnthonyBY
– гребец в галеры

+2

разрешите полюбопытсвовать, какой вход для третьего тома? в плане основы дискретной математике — это понятно, но чтобы понимать примеры на «MIX-ассемблер», нужно ещё и асемблер вспомнить? :)

спасибо

p.s. wiki: Другой отличительной особенностью книги является обилие упражнений для самостоятельного выполнения, разной степени сложности, начиная от простых задачек «для разогрева» и заканчивая открытыми проблемами. Сложность каждого упражнения оценена по числовой шкале от 0 до 50. Так, в ранних изданиях числом 50 была отмечена Великая теорема Ферма, но в третьем издании эта оценка «девальвировала» до 45, так как к этому моменту её доказательство уже перестало быть открытой проблемой.

Cba37fea0e181555299cefd0862747a7?1510862235

Вход для третьего тома - наличие желания, имхо. Ну и базового уменя программировать. Даже если вы в чем-то не разберетесь (а это обязательно произойдет), эта книга обогатит вас духовно :-).

Примеры у него густо откомменчены, думаю, разобраться не очень сложно - тем более, прочтя уже текст главы перед этим. А если еще и на подкорке завалялись кусочки ассемблера - проблем не будет вообще.

Кстати, устрою каминг аут - я не решал прям вот упорно упражнений, которые приведены в книге. Как-то в голову не пришло. Это на случай, если кто-то напишет "задачки точно не решал, а читать советует, гад".

Missing
-1

Я и имел ввиду упражнения. Я в свое время Кормена решал больше полугода, занимаясь каждый день и все не решил. Про задачи у Кнута - страшно подумать.

Cba37fea0e181555299cefd0862747a7?1510862235
+2

Ну вы же не обязаны их решать. Вот по правде. Никто же не стоит со стволом у головы и не говорит "решай задачи, а не то пристрелю!"

Picture_572?1356409814
agentcooper
– PM в Softeq Flash Solutions

+7

С точки зрения чисто формальной логики из вашего ответа следует, что тот, кто Кнута читал, рекомендовать его не будет ни при каких обстоятельствах. "Первое правило Бойцовского клуба - никому не рассказывать о Бойцовском клубе". :D

Picture_63?1356409795
+1

А я бы посоветовал почитать исходники ubifs и mtd в linux kernel, чтобы понять надо ли оно вам. (UBIFS/MTD работают прямо поверх NAND, без всяких firmware, т.е. там и есть реализация firmware в ядре ОС).

Cba37fea0e181555299cefd0862747a7?1510862235
+1

Организация самой FS (правильнее будет это назвать, пожалуй, трансляцией адресов) - это изрядный кусок фирмвари, конечно же (и довольно сложный), но это далеко не все - там и шифрование, и поддержка протоколов, и коррекция ошибок, тд и тп.

Cba37fea0e181555299cefd0862747a7?1510862235

Добавлю еще, что идея софтверного FTL (flash translation layer) поедает мозги уже давненько - это позволило бы крепко удешевить девайс.

Однако никому пока что не удалось создать более-менее высокопроизводительный SSD на базе таких поделок, хотя бы клиентский, не говоря уже об энтерпрайз.

Picture_63?1356409795

Хм... Собственно Nokia успела выпустить пару linux телефонов на ubifs. Производительность высокая.

Но не униварсально ... да.

Cba37fea0e181555299cefd0862747a7?1510862235

Ну мобильные помедленнее (в разы) , там вполне реально.

Missing

На мой взгляд, это чисто идея. Поясню:

- Программная реализация работы железа на уровне ОС была реализована в первых аппаратных комплексах, Но (и очень большое) решение не универсально и очень привязано к оборудованию.

- Работа через Firmware даёт с одной стороны гарантию параметров работы устройства, с другой обеспечивает некий уровень его защиты (поменять прошивку просто так не получится)

- Программная реализация FTL практически в любом случае загрузит ОЗУ и ЦП компьютера и будет работать на уровне ОС в такой ситуации выдержать гарантированные параметры работы устройства не получится, т.е. возвращаемся к автономизации аппаратных средств (свой IO процессор. набортная память, собственный кэш и проч. прибамбахи). Ещё один минус - вирусы, дестабилизировать работу устройства станет в разы проще.

Так что, идея и останется идеей (возможно для некоторых классов устройств такая реализация окажется приемлемой)

Missing-male

Тут есть разные соображения...

- То что привязано к оборудованию, это как раз нормально, потому что вся эта машинерия будет находиться в драйвере устройства для которого вполне естественно быть специфичным для конкретного железа.

- Что касается загрузки RAM/CPU, то нельзя забывать, что мощность CPU на гигагерцевых частотах на порядки превосходит мощность встроенных микроконтроллеров, поэтому, при должной оптимизации, может получиться даже быстрее с учетом всех накладняков на работу самой OS.

- Вот с тем, что можно нарушить работу устройства, и, грубо говоря, его программно "сломать" это проблема, да. Но в том и челендж - написать прошивку так, чтоб потеря части данных FTL не приводила к окирпичиванию девайса. Собственно, там и так этот функционал частично есть - потеря данных в локальной RAM при отключении питания, после которой накопитель должен восстановиться. Тут то же самое.

Так что, на мой взгляд идея здравая.

Cba37fea0e181555299cefd0862747a7?1510862235
+1

Начинка энтерпрайзных дисков вас сильно удивит. 15-20 арм-овских ядер там может быть легко - поэтому ни о каком "на порядки" речи не идет. И памяти 2-8 Гб.

Вы готовы эти ресурсы пожертвовать из своего компа? :-)

Клиентские SSD, конечно, попроще - но все же.

Missing-male
+1

Ну, я, конечно, конкретно для SSD не писал, спорить не буду. Я исходил из предположения, что частоты порядка 100-200МГц и чипы уровня Cortex-M/Cortex-R. При таком раскладе монструозный десктопный 8-ядерный процессор работающий на частоте в 3.5ГГц с десятками мегабайт кэша и out-of-order-ом, типа AMD Ryzen, это все-таки совершенно другой уровень. Но может быть не на порядки, да.

Что касается ресурсов из компа, процессор все равно занять особо нечем, кроме JS-фреймворков, вот пусть бы и... :-)

Missing
+4

Вот захотелось рейтинг статье поднять, а кнопки нет :-0

Missing
-1

"типы тестов не раскрываются", особенно "приносят свалившийся после тестов девайс, и что с ним делали тоже не раскрывается" - менеджеры слабые, "размазняистые", знать, какой именно завалился тест - важно в первую очередь для заказчиков, чтобы вы максимально усиливали нужные характеристики, и это можно и нужно донести до самих заказчиков. Определить причины, почему "Не говорили", их может быть ряд. и проработать (решений тоже может быть ряд). Я их уже сейчас вижу, только в последнее время работать за идею поднадоело, подсказывая директорам как и что делать.

Picture_572?1356409814
agentcooper
– PM в Softeq Flash Solutions

-1

Да, я не сомневаюсь, что вы вполне могли бы убедить топов MS, Dell и HP в том, что они не понимают своих реальных интересов. И что конечно же им следует раскрыть свои тестовые сьюты, давая возможность вендорам SSD и прочих компонент делать специально заточенные под эти тесты модели оборудования. Присылайте нам резюме с пометкой "на позицию не ниже senior vice president".

Missing
-1

Во-первых, данный вопрос, возможно, определяется не на уровне топов, если где-то нужно их вмешательство - то аргументированно подойти можно и нужно и к ним. Ничего тут фатального нет. Для этого надо иметь зачатки проблем солвинг абилитей и возможностей вырабатывать и доносить до сторон компромисные взаимовыгодные условия. Нужно проанализировать бизнес-процессы компаний, выработать стратегии подходящие... к кому, в каком порядке, с чем, каким путем... тут смотреть надо конкретно.

Судя по вашему ответу - вы просто боитесь работать, выполнять непосредственные менеджерские обязанности, пытаясь назвать, в общем-то типовую задачу "притирки" бизнес-процессов компаний, чемто "неразрешимым", что для менеджеров "по банно-стаканному праву назначенных", с недостаточной квалификацией и личностными качествами, неудивительно.

В ваших словах пораженчество и страх, от того преувеличение реальной сложности задачи, и полное игнорирование интересов вверенных вам подчиненных, которых вы оставляете "долбаться" при неотлаженных бизнес-процессах

По поводу "тестового сьюта" и "заточенности под него".

Один из азов техники нахождения компромиссов, совершенно бесплатно, сообщу :)

У вас обоих общие цели - чтобы устройство было максимально качественным и живучим.

Если у устройства в процессе специфических условий эксплуатации (например, при высоких температурах или вибрации или чем угодно еще) обнаруживаются проблемы - это можно и нужно отметить, чтобы а) позволить проработать проблему глубже. б) Вскрыть возможные технологические недостатки конструкции, чтобы позволить повысить надежность еще больше в) уделить время дальнейшему совершенствованию. Как пример.

Потому что таким образом возможно выявление тех проблем, которые смогут повылезать после длительной эксплуатации, а за проблемы любые "тестировщикам" спасибо не скажут, им интересно обеспечить максимальное качество устройств.

Судя по сформулированной в топике автором проблеме, вопрос "слишком уж тотального сокрытия" условий теста продиктован неуверенностью "тестеров" перед тем, смогут ли они обеспечить наилучшее качество образцов, и, как следствие - недостаточной проработанностью вопроса о том, что же надо "скрывать" от вендора, а что, напротив, нужно показывать для обеспечения того же высокого качества.

Надо посмотреть по ситуации как что, правильно выразить, правильно сформулировать, правильным людям правильно донести - вот она, работа менеджера

Более детально углубляться - это уже работа, за которую мне не платят и процент от успеха никто не обещал ;)

Missing

Если все плохо и трудно донести нужное и получить результат (что бывает не очень часто), то методы "поиска тех, кто принимает решение" и методы "донесения до них нужной информации, которая склоняет к принятию правильных решений" также обширны. Но там сложно и ювелирно работать надо. Тут, действительно, можно где-то и навредить делу, если коряво подойти. Ювелирная менеджерская работа required. А не ходить на работу за оклад составлять "диаграмму ганта" а тех. специалистов оставлять "загибаться на пахоте" при неотлаженных процессах, "как есть" =)))

Если бы этот менеджер все усилия, которые рабочие прилагают, из своего кармана оплачивал, он бы по-иному взглянул на свои горизонты возможностей оптимизации бизнес-процессов, и нормальные типовые задачи оптимизации бизнеса, которые владельцы своего дела делают как само собой разумеющееся, не списывал бы так загодя в область "невозможного". Этим, вобщемто, поокладники-назначенцы, и реальные "бойцы свободного рынка, привычные выходить на арену с собственным баблом" отличаются кардинально.

Cba37fea0e181555299cefd0862747a7?1510862235
+4

Уважаемый, Вы несете пургу.

Компании-заказчики проводят _конкурс_ среди вендоров. На то, чьи диски будут в итоге заказаны.

Это не аутсорс, это не отношения "заказчик-исполнитель". Если ваш диск обосрался - просто возьмут другого вендора и все.

_Все_ компании-заказчики считают свой тест сьют своей коммерческой тайной. Просто потому что чисто математически протестировать SSD на 100% невозможно, любой тест это _фрагментарная_ проверка возможностей драйва. Поэтому, имея этот тест сьют, вендор получит огромное преимущество в прохождении квалификационных тестов - что никому не интересно совсем.

Missing

Ок, это не аутсорс.

Примерный план действий.

1. Узнать, какие провалы были в коммерческих продуктах потенциальных компаний-заказчиков, в их финальных коммерческих решениях. Самим узнать. Собрать таких примеров побольше.

2. Проработать красивые бизнес-процессы, с бпмн диаграммами и прочей красотой, как "если бы процесс тестирования дисков был согласован с производителями", как бы было легко избежать подобных проблем. Проблем надо найти побольше и показать, что ваш бизнес-процесс панацея.

Экономический эффект привести для примера в больших бабках в цифрах.

2.1 Собрать портфолио о том, что вы крутые производители винтов

3А. Выявить возможные "банно-стаканные отношения" влияющие на выбор "победившего в конкурсе", если там "методы тестирования" засекречены - это благодатная почва для таких отношений, и они там, возможно, уже будут. Выявить их и вступить в такие отношения. Для этого - заиметь инсайдера в компании. Как делать - см пункт 4 - метод тотже.

3Б. Установить ключевых стейкхолдеров, т.е. тех, кто тупо влетел на бабло от данной проблемы, - это могут быть менеджеры с недополученными премиями, или любые другие стейкхолдеры, которые имеют влияние.

4. Наладить контакты с инсайдерами и стейкхолдерами.

Тут надо оценивать здраво варианты. Они могут быть

4.1. Официальный контакт

4.2. Встреча на профильных митапах, которые посещает товарищ

4.3. Общие клубы по интересам, где тусуется инсайдер или стейкхолдер, и выход на тех, с кем он там на короткой ноге и в банно-стаканных отношениях,

4.4. Подсовывание ему девушки, которая станет его любовницей и продавит ваше инновационное решение, или (что лучше) поискать девочек-динамщиц из окружения нужной персоны, которые сами охотятся на топов и умеют продавливать нужные решения, на них просто тоже можно выйти. Методы - выше.

Палю темы на публику. Пользуйтесь товарищи, пока я жив и общителен

Picture_572?1356409814
agentcooper
– PM в Softeq Flash Solutions

+2

Вы возможно недосмотрели что-то в статье. Почитайте пожалуйста статью в Википедии ( https://en.wikipedia.org/wiki/SK_Hynix ) о компании, некоторое время посмотрите на оборот и прибыль, прогуглите клиентов и конкурентов, подумайте, стоит ли вам тратить своё время на то, чтобы генерировать идеи и предложения столь высокого интеллектуального уровня.

Missing

Спасибо, мне знаком этот производитель, и мои мысли были сказаны с учетом понимания специфики "производителей данного уровня". Мне знакомы бизнес-процессы и всякие бизнес-кейсы имевшие место быть с производителями именно такого уровня, и даже местами из именно этой отрасли.

И поэтому, сообщу важный DISCLAIMER: Я призываю действовать в строгом соответствии с действующими законодательствами всех государств, и никоим образом не призывал нарушать что-либо. :)))

Missing

Я вам по-секрету скажу. Чем больше компания, тем сильнее там влияние банно-стаканных отношений во многих сферах ее деятельности, особенно, в которых крутятся возможности получения денег.

Снова озвучу Дисклеймер, я призываю чтить УК. :)

Missing

Решать вопрос надо путем подключения наименее высокого чина, который бы был достаточен для решения вопроса. Возможно в этом "засекреченом" процессе все отдано на откуп местному манагеру, который по банно-стаканному праву может оказать то или иное влияние. Надо установить кто хеад-хончо. Если не подходит такой уровень - метить выше, искать стейкхолдеров, кому было бы интересно "оптимизировать бизнес-процессы сотрудничества для минимизации потерь и максимизации прибылей, понижения возможности срабатывания негативных рисков изза отказа оборудования в будущем..."

Перед всем надо взять инсайдера компании старичка из нужного департамента, девочку ему подсунуть или подкупить его любовницу, чтобы она могла его напоить, и узнать, какая там атмосфера, исходя из данных действовать.

Возможно придется, мосты налаживая на определенном этапе даже скрыть, какая компания интересуется тем или иным вопросом...

Тут не обучить фигурному катанию словами в 2х страницах, работать надо...

Тут тонкая работа нетривиальная.

Кто умеет - срывает куш, кто не умеет - тот как минимум не срывает, долбается об стену лбом, ну или портит всё дело, тут как получится.

Что до данной ситуации as far as I see на данный момент (а в ситуацию я не углублялся и могу быть в чем-то не прав), однако, на основании имеющихся данных:

здравый смысл человека с 2мя техническими (одним айтишным) и одним менеджерским (тоже айтишным) образованием, тоесть меня, говорит о том, что после "упавших" тестов огласить те нагрузки, которые девайс "не удержал" - разумно с технической точки зрения и с точки зрения нормального здравого бизнес процесса, если целью является "дать максимально качественный продукт". Тут бы было соревнование - чтобы винт как можно больше держал ту ту ту и эту нагрузку, кто чемпион тот и победил.

А вот просто все засекретить и работать по принципу "сломали - как - не скажем", это ярчайший признак банно-стаканных отношений в процессе выбора потенциального партнера, такчто действуйте, вам, как говорится, и флаги в руки :)

Picture_572?1356409814
agentcooper
– PM в Softeq Flash Solutions

+3

Горшочек, не вари! :D

Missing

Проблема негибких менеджеров в том, что они, увидев, что на рынке существует некая игра, приняли сразу правила игры и играют, бегая до седьмого пота, не пытаясь даже подумать, как можно все подкорректировать в вашу пользу.

Вступая на какое-то поле существующую игру принимать можно и нужно, однако при этом надо не оставлять попытки корректировать саму игру, для своих целей.

Фильм ДМБ смотрели? "Пока противник рисует карту наступлений - мы за ночь меняем ландшафт местности. Причем вручную!" :)

Cba37fea0e181555299cefd0862747a7?1510862235
+1

Я тут думаю - может, Вы как раз недавно курсики какие-то полезные закончили?

Missing

Основные курсики - универ, в количестве 2х шт, это основное, а разные мелкие "курсы" регулярно посещаю скуку развеять, временами там бывает что-то интересное, однако нередко бывает ощущение, что это преподаватель должен доплатить мне :)))

Missing-male

У MS два года тому был в ходу https://github.com/Microsoft/StorScore

Cba37fea0e181555299cefd0862747a7?1510862235

И она прям на квале использовалась? Чот сомневаюсь - если и так, то точно не только она.

Missing

Отличная ветка комментариев! Прочитал не без удовольствия. Спасибо обеим сторонам!

Missing-male
+3

Ну и чтоб два раза не вставать. Любой пост про Firmware будет неполным без бородатой притчи из Дао Программирования:

Железо повстречалось с Программой на дороге в Чанг Це. Программа сказала: "Ты - Инь, а я - Янь. Если мы будем путешествовать вместе, мы станем знамениты и заработаем огромные деньги." И так эта пара пошла дальше, думая о том, как они завоюют весь мир. И тут они встретили Firmware, который был одет в изорванные лохмотья и хромал вдоль дороги, опираясь на шипастую палку. Firmware сказал им: "Дао лежит вне Инь и Янь. Оно тихо и спокойно, как пруд. Оно не ищет славы, поэтому никто не ощущает его присутствия. Оно не ищет удачи, потому, что оно самодостаточно. Оно существует за пределами пространства и времени." Железо и Программа пристыженные вернулись в свои дома.

Missing-male

Вообще не понял притчу. Пойду лучше кодить свой веб.


Авторизуйтесь, чтобы оставлять комментарии

Использование материалов, размещенных на сайте, разрешается при условии прямой гиперссылки на dev.by. Ссылка должна быть размещена в подзаголовке или в первом абзаце публикации.
datahata — хостинг в Беларуси