Viaden Mobile объявляет Мобилизацию-2!

110 комментариев
Viaden Mobile объявляет Мобилизацию-2!
Прошло 4 месяца, как Viaden Mobile объявил акцию о Мобилизации. По ее итогам к нашей дружной команде классных профессионалов присоединилось пять сотрудников. Все они успешно прошли испытательный срок и уже работают над созданием новых программ и игр для iPhone и iPad.

Михаил Сотников:

«Я чертовски рад, что 4 месяца назад мне на глаза попалось объявление об акции от Виаден Мобайл. Для меня это была отличная возможность не теряя силы и время переключиться на интересное для меня направление – разработку для мобильных платформ. А когда к интересной работе прилагаются хорошая зарплата да толковое руководство – работать в радость».

Андрей Почтарев:

«2 месяца программы дали мне возможность освоиться в программировании под іOS и начать работать над реальным проектом. Помощь коллег позволяет чувствовать себя увереннее в работе. Программа дает новые опыт и знания в интересной для меня сфере IT».

Впереди лето, новый сезон, новые проекты, и Viaden Mobile объявляет новую акцию Мобилизация-2

Если Вы программист Senior уровня, не имеющий опыта работы с iOs/Mac, Вам интересна новая, самая актуальная на завтрашний день специализация на рынке – то мы Вас ждем! С первого дня предлагаем зарплату Senior уровня, соответствующую уровню заработной платы iOs программиста, первые три месяца будете обучаться и работать под руководством наших специалистов. В итоге – Вы освоите одну из перспективных специализаций, будете участвовать в превращении в жизнь интересного проекта и Ваш уровень зарплаты будет стабилен в сегодняшних условиях финансовых перемен.

Мы предлагаем:

  • Высокий уровень заработной платы
  • Разработку только собственных продуктов, никакого нервного аутсорсинга
  • Интересные захватывающие проекты
  • Работу в команде профессионалов
  • Офис в центре города около (ст. Институт культуры), удобная собственная парковка – места хватит всем + на лето парковка для велосипедистов :)
  • Комфортные рабочие места, MacBook PRO + Apple Cinema 27
  • Социальный пакет, обучение
  • Оплачиваемые занятия спортом
  • 100% оплачиваемый больничный

Требования к кандидатам:

  • Опыт работ с С / С++ от 3 лет;
  • Опыт геймдева как плюс
  • Глубокие знания С / С++;
  • OOP, design patterns;
  • Желательно знакомство с Objective C 2.0
  • Желателен опыт в Gamedev
  • Элементарные навыки работы с Photoshop;
  • Английский язык;
  • Самостоятельность при выполнении задач;
  • Коммуникабельность, умение работать в команде

Контакты:

Контактный e-mail hr@viaden.com Web www.viaden.com Skype natalia.miachyna

Горячие события

Конкурс EY Entrepreneur Of The Year 2020
31 мая — 31 мая

Конкурс EY Entrepreneur Of The Year 2020

ISsoft Insights 2020
6 июня — 6 июня

ISsoft Insights 2020

Минск
GoWayFest 4.0
11 июля — 11 июля

GoWayFest 4.0

Минск

Читайте также

Видеоинтервью с Кириллом Голубом про инвестиции, плохие стартапы, агрессивный EPAM и Беларусь как региональный хаб. Ревью 007
Видеоинтервью с Кириллом Голубом про инвестиции, плохие стартапы, агрессивный EPAM и Беларусь как региональный хаб. Ревью 007

Видеоинтервью с Кириллом Голубом про инвестиции, плохие стартапы, агрессивный EPAM и Беларусь как региональный хаб. Ревью 007

5 комментариев
Каким стал 2019-й для dev.by в цифрах и фактах. Выросли на 65%
Каким стал 2019-й для dev.by в цифрах и фактах. Выросли на 65%

Каким стал 2019-й для dev.by в цифрах и фактах. Выросли на 65%

3 комментария
«Если бы все бизнесы были венчурными, это был бы караул!» Бизнес-ангел Angels Band — о грамотном делегировании, пределах влияния на стартап и идее ИТ-квартала
«Если бы все бизнесы были венчурными, это был бы караул!» Бизнес-ангел Angels Band — о грамотном делегировании, пределах влияния на стартап и идее ИТ-квартала

«Если бы все бизнесы были венчурными, это был бы караул!» Бизнес-ангел Angels Band — о грамотном делегировании, пределах влияния на стартап и идее ИТ-квартала

3 комментария
«Мы знаем, чего хотят айтишники». Владелец сдающегося в аренду офиса на 200+ мест в центре Минска — о «крутых опциях» и «приятном соседстве»
«Мы знаем, чего хотят айтишники». Владелец сдающегося в аренду офиса на 200+ мест в центре Минска — о «крутых опциях» и «приятном соседстве»

«Мы знаем, чего хотят айтишники». Владелец сдающегося в аренду офиса на 200+ мест в центре Минска — о «крутых опциях» и «приятном соседстве»

8 комментариев

Обсуждение

-1

"Опыт геймдева как плюс"
'Желателен опыт в Gamedev"
По-моему, стоит крепко задуматься о требованиях к кандидатам. На кой хорошему программисту нужен Фотошоп? И зачем глубокие знания C++, если для разработки используется ObjC?

1

1) Программисту, который разарабатывает игры 2д или приложения с custom интерфейсом фотошоп знать надо на уровне пользователя по определению работы. (не на уровне художника/дизайнера)
2) Глубокое знание С++ (при незнании Objective C) гарантирует освоение и грамотное (!) применение Objective C... Да и SDK на С++ как бы есть...

-1

1) Если я строгаю свой UI, то я и в пейнте спокойно делаю разноцветные болванки, даю им имена, а потом художник в фотошопе нарисует то, что надо. Я трачу 5 минут времени, а не день.
2) Я бы сказал, что глубокое знание C++ практически гарантирует высокий уровень адекватности, а из этой адекватности идёт лёгость владения чем угодно, хоть жабой, хоть ObjC.
Как вариант у нас просто разное понимание этой "глубины". Для многих людей стоит запомнить 5 форматных спецификаторов printf() и услышать по радио словосочетание "виртуальный деструктор" - и всё, мнят себя глубоководными гуру из тусовки Александреску.

Anonymous
Anonymous работаю в Digiteum
1

Ничего себе, а почему это глубокое знание С++ гарантирует высокий уровень адекватности? Аргументируйте, пожалуйста.

2

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

Anonymous
Anonymous Sr. Director, POC and Innovation в Kibo
1

>> В шутку

Ричард Столлман - параноик, Ганс Рейзер убил жену и закопал

>> Серьезно

>>>>> Из знакомых не-плюсовиков единицы вообще знают тривиальные вещи типа работы кэша или механизма приведения типов (пускай в той же джаве. Как-то так.

Да вы что? :) Серьезно? Вы не тех людей знаете. С++ не показатель. Умение разбираться в слишком сложном языке не говорит ни о чем, кроме того, что человек сел и разобрался в слишком сложном языке. Из этого вовсе не значит, что он может легко разобраться в динамических языках а-ля Ruby, написать сложный высокопроизводительный запрос к базе данных или сделать удобный для пользователя интерфейс. Есть куча умных и адекватных людей, которые не знают или не любят С++ - и поверьте, таких людей куда больше, чем С++ников.

Anonymous
Anonymous работаю в Digiteum
1

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

1

Вот видите, Мутаре, при всем глубочайшем к вам уважении, С++ ники сразу поняли о каком уровне адекватности идет речь, а вы про общечеловеческую с Алданом сразу подумали и оное человечество сразу же и бросились защищать :) что конечно же не может не радовать. Это плюс. Один плюс. Всего.

А надо-то два плюса! Чувствуете разницу?! :)

А если серьезно, Си - основной язык в мире на данный. И все более менее специалисты его знают и умеют. И не потому, что если ты знаешь С/С++ то у тебя цвет ауры другой сразу становится. Просто если ты в голове имеешь _адекватную_ модель ай-ти, начиная от железа, драйверов, внутренностей осей разных (хотя бы схематично и общие принципы), принципов фунциклирования сетей, алгоритмы, принципы построения софта всяко разного и прочее, то ты в той или иной мере вынужден знать С/С++. Потому что, все это на нем родимом и написано. А, чтобы досконально в чем-то разобраться надо в коде разбираться, много. Одной википедией и книгами гуру (за 21 день) сыт не будешь :) Ассемблер, кстати из этой же оперы.

В одном PooPS не прав: не глубокое знание С++ гарантирует адекватность, а глубокая адекватность в вопросах IT необходимо гарантирует знание С++ :) Знание С/С++ это индикатор. А вот глубокое знание руби, жабы, умение писать запутанные SQL запросы на 3 страницы как раз таким индикатором ни разу не являются.

-1

Не убедительно.

Например Linus Torvalds мне кажется вполне себе адекватным специалистом, но при этом терпеть не может С++.

Или вот например Haskell, может ли его знание, компенсировать незнание С++?

Насколько я вижу, вся ваша идея строится на том, что С++ неимоверно сложный язык. Так это не совсем так, он неимоверно идиотичен и содержит вагон и маленькую тележку странных архитектурных придумак и прочих unspecified и undefined behavior'ов.

1

Любой человек знающий хотя бы немного C и C++ не станет употреблять конструкцию "С/С++".

Anonymous
Anonymous Sr. Director, POC and Innovation в Kibo
0

>> глубокая адекватность в вопросах IT

Что имеется под "в вопросах IT"? :) Если сюда вы включаете юзабилити, UX, веб и прочее сервисноориентированное из мира IT - вы не правы в утверждении про С++. Если НЕ включаете - то вы очень узко смотрите на мир IT. Выбирайте :)

-1

Табу? :)

-1

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

-1

Не передергивайте, вопрос стоял так: знание С++ == адекватность как ай-ти специалиста. Вы утверждаете: Linus Torvalds адекватен и С++ терпеть не любит. Разве отсюда следует, что Linus Torvalds его не знает и не умеет?! :)

При этом, я лично считаю что в данном аспекте имеет смысл разговаривать о паре С/С++. А к С оный Linus Torvalds относится вроде как вполне себе терпимо.

Ок. Раз С++ такой идиотский, что ж его используют то так, что Haskell просто нервно уже укурился в стороне от зависти!? Все вокруг мазохисты, а вы один на пару с Haskell-ом нет? :)

1

Нет. Просто это совершенно _р_а_з_л_и_ч_н_ы_е_ языки программирования!

Anonymous
Anonymous Sr. Director, POC and Innovation в Kibo
0

Ну какое тут передергивание :) Я хочу уточнить термин IT, т.к. считаю себя человеком из IT индустрии, достаточно адекватным, при этом С++ не переношу на дух (Си как таковой люблю и Objective-C осваиваю). И вот чтобы не с шашкой наголо нестись на ваши оборонительные порядки, уточняю - правильно ли вас я понял.

В моем понимании С++ мир - всего лишь некоторая часть IT-мира, соответственно все ваши выкладки неверны (если вы, конечно, не поменяете понятие IT)

1

> Не передергивайте, вопрос стоял так: знание С++ == адекватность как ай-ти специалиста. Вы утверждаете: Linus Torvalds адекватен и С++ терпеть не любит. Разве отсюда следует, что Linus Torvalds его не знает и не умеет?! :)

Ох.. Это значит, что некоторые адекватные IT специалисты считают этот язык ужасным, а значит знание его никак не приближает человека к адекватности. Так как Линус вполне адекватно описывает недостатки С++, то я думаю он с ним знаком, но я не думаю, что он его "умеет" или уж тем более пишет на нём. И опять таки уверен, что не согласиться с тезисом об обязательном изучении С++ для всех IT специалистов. Или Вы из тех людей, что считают, что надо вначале попробовать покурить, чтобы точно решить надо ли оно тебе?

> При этом, я лично считаю что в данном аспекте имеет смысл разговаривать о паре С/С++. А к С оный Linus Torvalds относится вроде как вполне себе терпимо.

Блин, я же уже писал. С и С++ нельзя ставить в пару. И тот факт, что Линус к примеру пишет на С и ругает С++ говорит о принципиальных отличиях между этими языками.

> Ок. Раз С++ такой идиотский, что ж его используют то так, что Haskell просто нервно уже укурился в стороне от зависти!? Все вокруг мазохисты, а вы один на пару с Haskell-ом нет? :)

Есть много разных причин, почему люди используют определённые инструменты. Но мы тут обсуждаем не это, а почему владение этим инструментом делает человека адекватным IT специалистом? Популярность?

Хаскел я привёл из-за вот этого
> Из знакомых не-плюсовиков единицы вообще знают тривиальные вещи типа работы кэша или механизма приведения типов

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

1

почитайте, зачем в С нужен undefined behavior - http://blog.llvm.org/2011/05/what-every-c-programmer-should-know.html .

-1

Это дозволено только г-ну Страуструпу :)
А по делу, ничто не мешает знать оба. Но таикх людей точно единицы.

-1

Я даже не думал, что этот вброс окажется НАСТОЛЬКО удачным =)

Anonymous
Anonymous Sr. Director, POC and Innovation в Kibo
1

Вброс шикарный, спасибо! :) Давно тут не веселились =)

0

Ну пусть _р_а_з_л_и_ч_н_ы_е_, и в чем проблема конструкции? Почему ее употреблять-то нельзя не понимаю? :)

0

Наизусть? Как евгения онегина? Пожалуй что таких и вообще нет! :)

0

Так это вообще не мой мопед, а PooPS-а.... у него и испрашивайте, что такое айти и зачем оно нам всем надо :)

0

Мне вот интересно, а если бы Линус (ох, икается старикану!) предпожил вам пойти и утопиться, вы бы вот так пошли и без раздумий и колебаний утопились? :)

0

Если для Вас фраза "знание языка" означает зубрёжку книг - то "это печально"©. =)
Вот был человек, писал лет 5 на голом Си, скажем, для всяких контроллеров и железок. А потом надоело и подался в десктопы, где писал что-нибудь сложное на плюсах ещё пяток лет. Не может он быть асом сразу по обоим направлениям разве?

0

Шучу я так, если что. Вы наверное не заметили, но в данной дискуссии, с позволения назвать, я целиком и полностью на вашей стороне, да :)

Хотя, стратегию "бей своих, чтобы чужие боялись", конечно тоже никто пока еще не отменял :)

Anonymous
Anonymous работаю в Digiteum
1

Как хорошо, что вы зашли на огонек =)
Столько уже тут нафлеймили за вечер. Адекватность понятие весьма субъективное. Автор комментария тему не раскрыл просто сделал вброс и все. Про адекватную модель ай-ти это уже вы додумали. Меня собственно больше заботит адекватность специалиста в общечеловеческом смысле - это тру. Более того такая уж глубокая адекватность с пониманием сетей, алгоритмов и ты пы в реальном мире не так уж и требуется, особенно, если речь идет о написании игрушек для iOs. :)
C++ был очень популярен какое-то время назад, и люди учили С++, чтобы найти работу, тогда же и Delphi учили. Знаю (не по наслышке), что среди С++ специалистов хватало спецов средней паршивости. Сейчас же мейнстримовыми являются .net, java, но это никак не означает, что спецы этих технологий не интересуются сетями, железом и прочей хренью.
Если че, то 6 месяцев работала программистом на ассембеле, тупо была вынуждена, технической адекватности мне это не прибавило. =)

1

А почему бы тогда не употребить С#/C++ или C/C#? ;)

0

Так а зачем _ВЫ_ тогда отвечаете на комментарии адресованные PooPS'у?

0

Нет. Тоже касается, если бы это предложил PooPS или testuser.

0

Потому что С# и слово адекватность малосовместимы :)

0

А зачем вы отвечаете на комментарии адресованные Aldan-у? :)

0

Если человек ненавидит С++, это ж не значит, что его сразу топить надо?! Не буду я вам таких глупостей предлагать - живите долго и счастливо. Глядишь у вас тоже все будет хорошо. Любовь она зла, полюбишь и С++ :)

0

Та я так зашел, чиста потролить - че ж еще в холиварных темах делать можно :) Кстати да, тоже рад видеть.

Девушка и асм, интересное сочетание. Так не прибавило понятно из-за чего - "тупо была вынуждена". Из-под палки когда, впрок не идет. Не ваше наверное, ну и ничего страшного :)

Я еще, с вашего позволения, вот эту вот фразу поредактирую, а то глаз от нее нервно дергается: "Знаю (не по наслышке), что среди С++ специалистов хватало спецов средней паршивости."

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

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

0

Почему?

1

Потому что я готов отвечать. А вы судя по

> Так это вообще не мой мопед, а PooPS-а.... у него и испрашивайте

нет.

-1

Хотя бы потому, что HelloWorld на C# отжирает совершенно неадекватное HelloWorld-у количество памяти :)

Да и судя по ссылками на Торвальдса вы закаленный холиварный боец, так что и сами знаете все эти аргументы. Че зря тут переливать :)

-1

> Хотя бы потому, что HelloWorld на C# отжирает совершенно неадекватное HelloWorld-у количество памяти :)

Т.е. адекватность будем определять размером HelloWorld'а?

> Да и судя по ссылками на Торвальдса вы закаленный холиварный боец, так что и сами знаете все эти аргументы. Че зря тут переливать :)

Да, но я знаю только аргументы, почему для каких-то задач лучше использовать C++, а для каких С#. Но я не знаю аргументов в пользу адекватности С++ программистов :)

0

ну как бэ память отжирает вероятно виртуальная машина как и в яве.

-1

> Т.е. адекватность будем определять размером HelloWorld'а?
В том числе... нормальный такой критерий.

> Да, но я знаю только аргументы, почему для каких-то задач лучше использовать C++, а для каких С#. Но я не знаю аргументов в пользу адекватности С++ программистов :)

То есть по вашему все С++ программисты неадекватны что-ли?

-1

Память выжирается спец. функцией VirtualAlloc. Невероятно, но тем не менее факт! По-крайней мере под виндой :) Только HelloWorld на С++ с помощью этой функции выжирает существенно меньше памяти. А что там за машина-шмашина такая, я как пользователь вообще не знаю. У меня пасьянс любимый тормозит! Вот где беда... :)

-1

Так на что ответить-то? :)

-1

Тогда и С++ должен нервно курить в сторонке и уступить место хотя бы С, не говоря уже об асемблере...

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

Если мне надо написать GUI приложение под винду, да я выберу С++, но если мне нужен веб, то лично я скорее всего выберу Python, а если нужен мощный сервеный демон, то я бы выбрал Erlang или Scala.

Так что если бы я говорил об адекватности программиста, то я бы смотрел на то как он подбирает инструменты для решения задачи.

1

т.е. поднять взгляд на пару комментариев выше и найти комментарий на который вы развели руками трудно? :)

0

Трудно, конечно :) Да и вообще, какой это вы тут адекватности ожидаете от С++ программиста. Ведь сам же Линус Торвальдс утверждает, что лично я неадекватен :)

0

Если вы заметили, то разговор начался не с проблемы выбора инструмента под задачу... а с утверждения: знает С++ - человек, не знает - недоразумение айтишное :)

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

1

Таки он говорил это только про язык. На что я вам всё время хочу намекнуть.

Я видел как отличных специалистов на PHP, которые потом могли с лёгкостью переключатся на OCaml, так и тупых С++ специалистов, которые на простой Java за неделю не могли самостоятельно ничего путного написать.

1

Нет. Я всё на том же уровне.

Я говорю, что если человек не занимается решением задач, в которых С++ является необходимым инструментом, то знать он его вовсе не обязан и это не как не скажется на нём, как на IT специалисте.

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

0

Скажется и еще как скажется... перечитайте статью, под которой мы комментим и, в частности, условия приема на работу :)

И откуда вдруг такая дескременацея по Php/OCaml/Perl/Java/C#/Delphi/Ruby признаку, м?

1

Потому что по видимому автор данной вакансии так же как Вы ставит С и С++ вместе, вот и подумалось ему, что раз Object_C_, то можно и его вместе с ними под одну гребёнку.

-1

То есть все вокруг альтернативно-ориентированные, а вы, пардон муа, д'Артаньян? :)

1

Может быть, если только Вы покажите справку, что вам можно за всех отвечать?

9

А я видел отличных специалистов на PHP, которые не могли никуда переключиться. Вообще никуда, представляете?! :)

И офигительных С++ специалистов, которые на простой Java за неделю делали тройную норму. И что из этого? :)

0

Да всё то же. Знание какого-то одного инструмента, ну ни как не может говорить об адекватности специалиста, каким бы этот инструмент не был.

0

А вы много встречали по настоящему хороших С++ специалистов, которые за границы С++ вообще носа не кажут и больше ничего не знают (точнее не хотят знать)? И если встречали, то сколько таким "специалистам" лет?

-1

А вы много встречали по настоящему хороших специалистов, которые за границы вообще носа не кажут и больше ничего не знают (точнее не хотят знать)? И если встречали, то сколько таким "специалистам" лет?

-1

ну эт матря как писать, если прикрутить шаблоны, перегрузку операций и подобную хрень, то тож не мало буит :) так что asm forever :)

1

Деццкий сад :)

-1

Вдогонку ещё цитата от знакомого, пишущего на джаве, хорошо характеризующая моё отношение: "Когда пишешь на C++ - нужно думать. А когда пишешь на Джаве - думать не нужно".
Обычно если долго не думать, мозги атрофируются.

Anonymous
Anonymous Sr. Director, POC and Innovation в Kibo
1

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

1

Когда я пишу на Java я думаю. ЧЯДН?

Да и Вы наверно не поверите, но кроме Java и C++, есть ещё много прекрасных языков. И на многих из них надо думать, по настоящему думать, а не следите за тем, о чём может позаботиться компилятор или виртуальная машина.

0

Кстати, хороший вопрос, а о чём он думает, когда пишет на С++ и о чём не думает, когда пишет на Java? :) Не ну честно, просто интересно!

1

Он думает: "Блин, что за дела! Тут не выстрели в ногу, тут костыль, тут UB... А писал бы сейчас на джаве, так за прост так получал бы мильёны... Э-эх!.."

0

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

Алексей Данченко
Алексей Данченко Инженер-программист в ЛюксСофт
1

Например, он может думать о том, кто ответственен за время жизни конкретного объекта.

1

Помнится, мы как-то разрабатывали одно приложение на Java. Там была очень интенсивная работа с миллионами строк. Поэтому да приходилось думать над тем когда их разделять на мелкие, когда объединять, когда положить в пул, особенно с учётом, что его производительность зависит от размера.

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

Да, конечно в Java есть GC, который многое делает за программиста. Но при определённых обстоятельствах даже с ним надо думать. Объект в любом случае будет им скушан, но регулируя количество ссылок на объект можно управлять, хоть и не так гибко, жизнью этого объекта.

Не говоря уже о том, что можно в некоторых больших С++ проектах можно встретить самописаные наколенные GC.

Если возвращаться к вопросу. Да Вы ответили на мой вопрос. В большинстве случаев, Java программисту не надо об этом думать, но
1. В хороших проектах часто и С++ программисту об этом думать не надо, за него старшие коллеги это сделают. А потом форумы полнятся негодование интервьюеров об отсутствии знаний о виртуальных деструкторах.
2. Всё таки в большинстве задач, особенно серверного плана, где в твоё распоряжении сервер с десятками процессоров или вообще кластер серверов, лучше чтобы программист думал о приближенных к задаче проблемах, нежели боролся с особенностями языка. Но это же ни в коем случае не отменяет знание программиста о том, что происходит в этой большой чёрной коробке.

-1

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

В связи с этим вопрос - не собираетесь ли вы пробовать другие сферы софта? Что-нибудь более, так сказать, общественно полезное что-ли? Или может уже?

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

1

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

Anonymous
Anonymous . в EPAM
-1

Юрий, я понимаю и даже не осуждаю Ваш self-promotional подход (это нормально), но ответьте честно хотя бы на прямой вопрос :)

Согласитесь, что "мы подписали контракты с двумя самыми большими в мире компаниями в области игр и соц игр" совсем не читатются как "мы-таки продали и устанавливаем наш казиношный софт одному более-менее крупному гэмблинговому network-у, и теперь сидим на проценте с их рэйка, и будем дорабатывать софт под их нужды. Таким образом мы практически полностью уходим с рынка разработки собственных продуктов, превращаясь в yet another outsourcing company с одним крупным заказчиком - и при этом остаёмся в гэмблинговой сфере (хотя мы всем будем продолжать говорить, что мы продуктовая компания). Тем более, что нам не привыкать уходить из аутсорсинга в продукты и назад :)". Ну или что-то вроде этого. С " лучшие в апсторе фитнес-приложения" тоже не смешно звучит - как накручивались в аппсторе рейтинги знают наверняка многие.

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

1

1. Полная ерунда, мы никому ничего не продали и речь идет об игроках рынка мобильных приложений (android и ios) и фейсбук. Самые крупные в мире компании. Их знают все. Не имею право написать кто, но это никакого отношения ни к какому геймблингу а тем более оутсорсингу не имеет - там договора по сути такие - мы развиваем продукт они делают рекламу, деньги пополам. Никакого оутсорсинга и близко нету.

2. мы не накручиваем рейтинги. в отличии от многих наших коллег - все черные методы раскрутки в нашей компании с осени категорически запрещены.

Anonymous
Anonymous . в EPAM
-1

1) Ну тогда звучать должно было так: "мы нашли 2 большие рекламные площадки (или PR companies, или online marketing agencies - не знаю как там у вас реально по договору, так как имена вы не называете), и они теперь стали нашими реселлерами (или distributors, или affiliates - не важно) и продают наши продукты. Мы как разрабатывали утилиты по подсчету калорий, так и будем продолжать это дело. Наши новые партнёры, конечно, будут нам давать какие-то рекоммендации по развитию продуктов (читай, спускать сверху высокоуровневое ТЗ), но мы будем 'класть' на это, т.к. это может быть воспринято как 'тень аутсорсинга', а мы - гордая продуктовая компания :)". Так что ли?

2) То-то массовые публикации на tut.by и прочих ресурсах о том, что ваши продукты были в топе аппстора закончились как раз осенью ;)

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

2

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

Anonymous
Anonymous . в EPAM
-1

Спасибо за Ваш развёрнутый комментарий :)

Боюсь, что 'все кто не в рынке' мало что поняли. Точнее, тоже всё поняли и сделали свои выводы ;)

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

С уважением, невнимательно читающий Глухой.

0

Юрий, расскажите, пожалуйста, о результатах акции.

0

Вопрос а тестировщики в этой пограмме участвовать могут?

0

Как кадровый резерв могут, но не факт что наем случится в июне

0

Я коренной дельфиец, на С никакого опыта не имею (кроме студенческого, но это было лет 15 назад). Зато имею большой опыт программирования и большое желание двигаться дальше, и очень интересно направление геймдев. Есть ли у меня шанс подпасть под эту программу?

0

Думаю Вам стоит написать подробное резюме, написать про желания развития и отправить все HR-у компании. И вам ответят про шанс.

0

Без шансов. Я ещё до Вашего комментария попробовал. Сказали, что нужно быть экспертом именно в C/C++.

0

Есть шанс у тех, кто приходили на собеседование по "Мобилизации-1", но не прошли?

0

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

1

К сожалению, обсуждение акции скатилось до обсуждения языка C++.

Компания Viaden Mobile выбрала уровень владения языком С++ как показатель при отборе кандидатов. Не вижу в этом ничего плохого. Хотелось бы написать, как именно компания определяет этот уровень.

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

На мой взгляд, в первую очередь, тест должен выявлять, на каком уровне разработчик знает (в контексте того, что разработчики будут писать на Objective-C):
- наследование и полиморфизм;
- управление памятью, время жизни объекта;
- шаблоны проектирования.

1

Доброго времени суток :)
Меня зовут Игорь, и я провожу собеседования в рамках мобилизации. Наверное Вы перед собеседованием не услышали, но я сразу всех предупреждаю, что вопросы в тесте довольно оторваны от реальных ситуаций. Естественно он отсеивает тех кто плохо дружит с С++, но основная его цель выявить как человек умеет решать каверзные задачи, его внимательность и логику. Впринципе многие не знают ответы на каверзные вопросы, но я смотрю как они "доходят" до ответа, и прошу прокоментировать решения.
А вопросы про наследование и полиморфизм, шаблоны проектирования, использовал ли человек Reference Count и т.д. задаются. Но задаются если я считаю нужным.

1

А можно пример "каверзного" вопроса? Очень интересно :)

0

Приходите на собеседование :)

0

Смысла нет - работа особо не нужна. Только что если так, от нефиг делать :)

0

вот тут полно материала для каверзных вопросов по С++ - http://stackoverflow.com/questions/75538/hidden-features-of-c

2

Гыыыыы, самая каверзного фича там в конце:
#define private public

А в целом там скорее развлекательный тред, чем познавательный. За что, собственно, вам отдельное спасибо :)

Про виаден просто интересно было, что именно спрашивают, шо тут народ стонет.

Потому как лично по моим всем собеседованиям, самым каверзные вопросом "по С++", был вопрос: "а сколько вы-таки хотите денег?" сопровождаемый взглядом, выражающим многовековую скорбь всем известного народа :)

0

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

0

Так вас никто ни в чем и не обвиняет. Народ который стонет, подозреваю, тоже не на 100% идеален :)

Тут, правда, сразу на языке вопрос завертелся насчет того, что для вас есть "рыночная ЗП"? Вопрос архикаверзнейший, сознаю... :)

1

Виаден не работает в вакууме.
1. Наши CEO постоянно общаются с CEO других IT компаний, и наверняка они обсуждают в том числе и вопросы ЗП сотрудников
2. Наши HR отслеживают предложения других компаний на рынке труда
3. У многих есть друзья в других компаниях на схожих должностях.

объединяя эти данные довольно просто понять какая ЗП рыночная.

1

Вот вы говорили, приходите на собеседование. Представьте, прихожу я значит к вам. Вы мне для старта задаете какой-нибудь простой вопрос:
- А скажи-тка, мил человек, а зачем нужен виртуальный деструктор в С++?
А я вам в ответ:
- Я, как программист, не работаю в вакууме. Я постоянно общаюсь с другими программистами и, в том числе, мы наверняка обсуждаем вопросы необходимости наличия виртуального деструктора. Я читаю много разных статей по С++ на разнообразных профессиональных сайтах. У меня есть друзья, программисты С++ в других компаниях, и они регулярно используют такие деструкторы. Объединяя эти данные, достаточно несложно понять зачем вообще нужны эти самые виртуальные деструкторы.

Интересно, вы далее еще будете задавать какие-либо вопросы или вам уже сразу все будет ясно с таким "кандидатом"? :)

0

Я бы на собеседовании задавал следующие простые вопросы по С++:

- Как реализовать поддержку виртуальных функций с выделением дополнительно sizeof(void *) на каждый экземпляр объекта?
- Как реализовать поддержку виртуальных функций с выделением дополнительно одного байта на каждый экземпляр объекта?
- Как реализовать поддержку виртуальных функций без выделения дополнительной памяти на каждый экземпляр объекта?
- Почему STL и boost не распространяются в виде скомпилированной библиотеки по типу стандартной библиотеки функций?
- Какие способы оптимизации применяются в реализациях STL для того, чтобы уменьшить итоговый размер программ, использующих STL, без модификации исходного кода самих программ?

Anonymous
Anonymous Software Engineering Team Leader в EPAM
0

5 хитрых вопросов это хорошо, но стоит один раз узнать на них ответ и расшарить ответы с другими соискателями и все.

Я бы просто предложил испытуемому пройти Брэйнбенч тест по C++, который содержит около сорока различных вопросов на разные аспекты языка. Это на мой взгляд намного более объективно.

-1

Давайте расшарим:

- Как реализовать поддержку виртуальных функций с выделением дополнительно sizeof(void *) на каждый экземпляр объекта?
Указатель на функцию

На остальные вопросы самым простым ответом будет одно слово "шаблон", возможно дополненное в последнем вопросе фразой "порвать оптимизатором" :)

Потенциальным соискателям, думаю, легче не стало.

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

Вопрос 4 вообще слегка подЪ...чный, там вариантами ответа могут быть:
1. шаблоны
2. лицензии
3. архитектура платформы - на BSD стандартная либа это вообще часть системы, а буст не часть - тоже ответ чо?!

Алексей Данченко
Алексей Данченко Инженер-программист в ЛюксСофт
1

Указатель на функцию - это не ответ на первый вопрос. Ответы "шаблон" и "порвать оптимизатором" тоже.

-1

Оужас, значит мне не светит работать в ЛюксСофт :) пойду застрелюсь.

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

0

Интересно, я на C/C++ не кодил уже много лет, но на первых четыре вопроса ответить могу. Значит ли это что я хороший С++ программист? Скорее всего нет, так как у меня просто мало опыта, да и давно это было. Впрочем, на собеседованиях надо задавать больше чем пять вопросов, чтобы составить полную картину о кандидате.

Но эти вопросы хорошие, да.

Алексей Данченко
Алексей Данченко Инженер-программист в ЛюксСофт
0

А я вот, например, не вижу вариантов, как реализовать нормальную поддержку виртуальных функций так, чтобы объем дополнительной памяти не зависел от количества объектов. (это вопрос 3). Можно меня просветить?

1

Я знаю только частный случай - кодировать индекс соответствующей таблицы виртуальных функций в адресе самого объекта, а массив таблиц виртуальных функций хранить в статической памяти. Например, если известно, что для заданного интерфейса у нас не может быть больше, чем 2^n реализаций, тогда можно кодировать номер реализации в младших n битах адреса каждого объекта. В такой схеме хватает вопросов и проблем, так что не уверен, возможно ли ее реализовать на практике:
- Как выделять память под объекты на стэке?
- Как оптимизировать возможную фрагментацию памяти? Кодировать номер реализации в старших битах?
- Как бороться с размещением объектов по невыровненному адресу ( http://lwn.net/Articles/259732/ )? Использовать "виртуальные" адреса объектов, в которых физические адреса вычисляются путем сброса n младших бит? Как бороться с расходом памяти, если размер объекта меньше 2^n?
- Что делать со сторонними библиотеками, которые не в курсе этой схемы?

0

Если не ошибаюсь, эта техника называется bit stealing или, возможно, tagged pointers.

Есть еще один вариант, как описано в публикации "Space-Efficient 64-bit Java Objects through Selective Typed Virtual Addressing" http://www.elis.ugent.be/~leeckhou/papers/cgo06.pdf

А вообще джависты на эту тему съели много, много собак, и результаты их исследований можно почитать, например, здесь -- http://jikesrvm.org/Publications

PS

В пятом вопросе речь идет о template specialization, что ли?

Алексей Данченко
Алексей Данченко Инженер-программист в ЛюксСофт
0

Ну да, логично. Но слишком уж эвристично-непрактично :) Могу еще сразу бросающуюся в глаза проблему привести конкретно для с++: как в такой схеме массивы объектов создавать? Кодирование в младших битах тогда сразу не подходит. В старших? Тоже будет беда хотя бы с допустимыми размерами массивов.

Алексей Данченко
Алексей Данченко Инженер-программист в ЛюксСофт
0

Скорее о Partial class template specialization. Конкретнее, о частичных специализациях для указателей. Ну, это то, что первое в голову приходит.

0

Частичная специализация шаблонов классов для указателей - это один из способов уменьшения code bloat.
Второй способ, который используется в последних версиях gcc - вынос членов класса, которые не зависят от некоторых параметров шаблона класса, за пределы данного шаблона класса. Это делает возможным повторное использование кода для шаблонов с различными параметрами, что позволяет уменьшить итоговый размер скомпилированного файла. Эта техника работает не только для stl, но и для произвольных шаблоны классов. Также она может найти применение для C# с их generics, код для которых генерируется во время выполнения программы. Подробности можно прочесть тут - http://www2.research.att.com/~bs/SCARY.pdf .

0

Нормально не получится, но где-то так вот. Через те самые "шаблоны":

#include < iostream >

template< typename _Derived >
class Base
{
public:
void f() {
static_cast(this)->_f();
}

void _f() {
std::cout << "Base" << std::endl;
}
};

class Derived : public Base < Derived >
{
public:
void _f() {
Base < Derived > ::_f();
std::cout << "Derived" << std::endl;
}
};

int main()
{
Base < Derived > * b = new Derived();
b->f();
}

Хотя виртуальными они будут чисто формально, конечно.

ret
ret Junior Clojure Developer в Targetprocess
11

не сказал бы что это вопросы простые. есть вопросы куда более проще - есть строка char* s = "Hello World!". Надо написать программку которая ее переворачивает.

12

в задании уже есть ошибка - "Hello World!" - константный строковый литерал, так что он не может присваиваться неконстантному указателю. Нужно писать либо const char* s = "Hello World!" либо char s[] = "Hello World!". Во втором случае строковый литерал будет использован в качестве инициализатора для массива s.

0

Это вопрос для кандидата на позицию сеньор солюшн аркитект-а. Простому программисту достаточно хоть как то написать fizz buzz. Шутка. А почему вопросы должны быть простыми? Не должны быть!

Алексей Данченко
Алексей Данченко Инженер-программист в ЛюксСофт
-1

цитата: "Я бы на собеседовании задавал следующие простые вопросы по С++:" :)