Проблема выбора Java EE / Android

UPD.
Всем спасибо за комментарии и советы.
Выбор сделан.
Всем удачи в поисках работы!

👍НравитсяПонравилось0
В избранноеВ избранном0
LinkedIn

Лучшие комментарии пропустить

если у вас еще нет второго оффера, то о чем вообще думать?
тем более, если первый вариант еще и интереснее.

Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

В любом случае, ты получишь опыт. А негативный опыт — он даже ценнее позитивного )
Так что не бойся — дерзай )
PS. А где это джуниоров берут, не поделишься? )

Предлагаю сделать следующим образом.
1) Согласиться на имеющуюся вакансию.
2) Проходить этапы собеседования в другую контору.
3) Если предложения из второй конторы не воспоследует, разговор как бы ни о чём.
4) Если предложение последует смотри на сколько тебе уделяют время в первой конторе и на сколько во второй тебя будут учить.
5) Никаких терзаний совести при отказе от вакансии не нужно: думай прежде всего о себе. Таких как ты джуниоров пруд пруди, если ты откажешься в тот же момент возьмут другого

Поддерживаю.

Тем более: «Не официальное трудоустройство, пока без офиса(работа из дому)»

Предлагаю идти на обе, а дальше — по обстоятельствам, плюс можно будет поторговаться.

Не думаю что джунам стоит торговаться)

Если нужна срочно работа — иди на андроид. Сейчас не много есть вакансий для junior java. И на второй конторе скорее всего конкурс большой, могут и не взять.

Да, вакансий не так много. Спасибо!

Андроид програмистов ща как собак нерезаных. Если и есть какая то перспективная ниша для мобильных разработок то это Windows Phone.
Опять же Delphi XE шас поддерживает кроспатформенные мобильные библиотеки — писать для андроида на яве не обязательно. можно писать на паскале сразу под несколько платформ.
Но с точки зрения скилзов J2EE стоит десятка андроидов. Просто потому что это приложения ентерпрайз уровня а не децкий сад.
WebSphere конечно монстр — помню как отлаживался сгачала на JBOSS а потом закидывал в WEBSphere потому как запускать вебсферу в отладчике надо нехилой мощности комп.

Да, я знаю про кроссплатформенность. Но, нативный язык будь то java, objective c нужно знать для нормальной работы с платформой.

во первых — java — не нативный
во вторых в любом случае для программирования надо знать как минимум один язык програмирования

Я неправильно выразился.
Для нативных приложений нужна java.

наоборот — для нативных приложений нужен нативный язык програмирования а не java

Жаба все равно будет нужна для нативных приложений под ведроид

Java выполняется в java машине. Посему никаких нативных приложений на ней не бывает. Ни на какой платформе.

Лол, а через что ты будешь дергать сишный\плюсовый код ? Не через жабу ?

при чем тут сишный код? Ява компилятор не генерит сишный код никакой. И ассемблерный не генерит. Неудивительно что тут столько топиков с поиском работы. Сложно пройти собеседование если нет даже понятия как работает ява машина и в какой код преобразовывается программа на Java

наверно всезнающий магистр не слышал о JNI ?
Есть нативный язык , а есть нативные приложения , и они пишутся на том языке на котором представлен официальный SDK — для Android — нативные приложения пишутся на Java , а не на С/C++

процессор на котором строится мобильный телефон не выполняет байт код JAVA. Посему нативное там ядро ОС и Dalvik. Но никак не ява приложения.
И каким чудом библиотека JNI делает программы на JAVA нативными? Что с JNI ява программа больше не требует JVM? И шо сие такое «нативный язык» ?

Процессоры на котором строятся мобильные телефоны бывают arm,armv7,mips,x86.. именно для этого нужна JVM. Приложения сразу пишутся для JVM а не для процессора и С/С++ используются через JNI мост.
Нативный = родной считается байт код далвика для дроида , но не как не so библиотеки кроссплатформенных движков.

Давайте еще поговорим про перспективы Windows Phone с менее 4% рынка.

спасибо, я знаю для чего нужна JVM, Еще раз для особо компетентных — нативное приложение — код которого выполняется непосредственно аппаратной частью платформы. Для устройств с ОС Андроид таковыми являются — ядро ОС, JVM Dalvik (но не байт код ява приложений! ) а так же другие приложения написанные на языках компилируемых в нативный код ( С,С++, Pascal и т.д. ) и выполняемых под управлением ОС Андроид непосредственно устройством (как любоя сишная програма на линуксе например). Или вы не в курсе что под Андроид можно писать не на Яве?

Хороший пример весьма распространенного на ДОУ эффекта Даннинга — Крюгера. )))

Просто процитирую первую попавшуюся доку по АРМ-у:


About 80-to-90 percent of Java instructions will map to single-cycle ARM instructions, and the remainder are trapped as exceptions and translated into multiple ARM instructions and operations via roughly 8 kbytes of microcode memory.

Надо читать не первую попавшуюся а разбиратся в вопросе.
Байт код и проектировался так чтобы попадать в инструкции процов. Но это не значит что железо выполняет байт код. просто при преобразования байт кода в машинные коды для выполнения большинства байт кодов достаточно одной инструкции процессора (однотактной разумеется поскольку ARM — это RISC архитектура).
Некоторые ARM процессоры могут выполнять ряд байт кодов но это редко используется — больше хлопот чем пользы. Я занимался прграмированием армов — благо процы от STM стоят копейки. так что не учите жену щи варить.
Посему повторяю последний раз для тех кто в танке сидит — на Андроид устройствах байт код ява-приложения выполняется JVM Dalvik и ни о какой нативности там речь не идет.
А вместо всяких эфектов и прочих умняков лучше бы знания распространяли.

JVM Dalvik и ни о какой нативности там речь не идет.
немножко позанудствую — с версии 2.2 JVM Dalvik имеет JIT компилятор
а с 4.4 — весь байт-код вначале компилируется в нативный. Правда и не Dalvik уже называется.

так что картина с JVM — давно сложней чем дихотомия — транслятор-интерпретатор.

Некоторые ARM процессоры могут выполнять
Jazzelle же да, не выстрелило.

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

Я и говорю —

эффекта Даннинга — Крюгера.
распространенный синдром среди таких как Вы.

Вообще то native переводится как родной. В контексте мобильных приложений, native считается использование родной sdk и языка: java для android, objective c для ios, c# для windows, и c/javascript для tizen. Это такое устоявшееся выражение о котором вы не знаете. Не native считается использование сторонних sdk и языков: например phonegap или xamarin.

это ТЕХНИЧЕСКИЙ термин имеющий определенное значение. Его нельзя переводить гугл-переводчиком и выбирать первое попавшее значение.

В мобильной разработке это именно устоявшееся выражение связанное с появлением кроссплаформенных платформ разработки(phonegap и тд). Никто не переводит, но наберите в гугле mobile native application и почитайте что под этим имеется в виду.

Можно и головой гвоздь забить.

Вы вкладываете какое то свое понятие в прилагательное ’нативный’.

Есть нативные приложения , есть кросс-платформенные — PhoneGap, Xamarin , Delphi XE.

Для использования сервисов телефона проще всего использовать Android SDK , через Java.

я ничего не вкладываю а использую ОБЩЕПРИНЯТОЕ значение термина в КОНТЕКСТЕ выполнения приложения на той или иной апаратной платформе. Нативные приложения — код который выполняется непосредственно апаратной частью. В случае ява приложений этого не происходит нигде. И каким боком тут кросплатформенность? Есть кросспатформенные приложения нативные (mysql,Apache, исполняемая среда PHP ) есть не нативные (java,PHP)

Прошу прощения, я не состою в клубе делфи программистов, поэтому не в курсе ваших терминов.

Я тоже не состою, хоть и не использую этот факт для повышения своего ЧСВ. Только какое отношение делфи имеет к обсуждаемой теме? наведите порядок в своих мыслях.

НДК в зубы и пиши на С/C++ сколько душе угодно. Удачи с использованием, например, ListView без жабы

NDK без Java не работает .
Мне интересно посмотреть на исключительно «нативное» приложение на Android , пакующееся в apk и использующее Google Play Services к примеру.

Да, но вот товарисч леон с пеной у рта утверждает что джава не нативна для андроида. Так пусть и попробует без джавы

какое отношение имеет обсуждаемый вопрос о нативности (объективный ТЕХНИЧЕСКИЙ термин) к трудоемкости написания приложений?
Вам тот же совет — наведите порядок в своих мыслях. Вы перепрыгиваете с одной темы на другую даже не потрудившись убедится в какой либо логической связи между ними.

От того что вы пишите «технический» капслоком, контекст mobile native application ни куда не денется. Если б капслок обладал такой силой, я б на работе ничего не делал и писал репорты капслоком.

объективный ТЕХНИЧЕСКИЙ термин
не-а :) термин «нативность» — контекстно-зависимый термин.
то есть НЕобъективный.
что и демонстрирует данное обсуждение.

Фразы:
Данное приложение нативно для данной платформы не имея нативного кода.
Данное приложение НЕ нативно для данной платформы имея нативный код.

истинны. оба случая возможны.

Нативные приложения — код который выполняется непосредственно апаратной частью.
это одна из частых расшифровок термина «нативное приложение». но не единственная.
Например — UI — бывает нативным, а бывает нет. Qt — ненативный UI. Cocoa — нативный. И неважно, что приложение с Qt написано будет на С++, а с Cocoa на Python.
Первое приложение будет называться — ненативным. второе — нативным.

Вы, как понимаю используете слово «нативное приложение» в качестве «приложение распространяется в машинных кодах конечной аппаратной платформы»

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

Web приложения — ненативны, пусть даже весь html-css-js будет скомпилирован в машинный код заранее и слинкован вместе с движком браузера.

это к чему вообще?

Если и есть какая то перспективная ниша для мобильных разработок то это Windows Phone.
Опять же Delphi XE шас поддерживает кроспатформенные мобильные библиотеки — писать для андроида на яве не обязательно.
Делфикодер детектед

И к чему это глупое, не имеющее отношения ни к месту ни к реальности примечание?

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

Я никого никуда не затягивал (у меня нет для этого никаких причин) а констатировал факт наличия програмного продукта. Так что держите свои юношеские понты при себе. Когда у вас будет хотя бы лет 10-15 програмерского опыта на разных технологиях а не только андроид тогда и будете судить какие програмисты лузеры а какие нет. И вообще для холиваров и мерянья крутизной есть масса форумов для школоты.

делфи умер, не надо откапывать труп

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

Если мне приспичит писать нативный софт, я выберу Qt, если мобайл-кроссплатформу — Xamarin. Но не Delphi ни разу.

Если мне приспичит писать нативный софт, я выберу Qt, если мобайл-кроссплатформу — Xamarin. Но не Delphi ни разу.
ИМХО и получится в 90% случаев тот еще кал.
Проверено 100500 хитросделанными заказчиками и исполнителями фриланс бирж.
Дельфи, конечно, никак не перспективная вещь после эмбаркадеровских закидонов. Но кроссплатформы еще гаже.
Я не програмирую на делфи но это далеко не труп.
Вы вакансии покажите
Альтернативы написания кросплатформенных мобильных приложений тоже.
Лол

можно узнать на чем вы программируете?

Извините, но выучив слово компетентность и некомпетентость, компетентнее не станеш. Контекст mobile native application все здесь. И вы говорите то о чем не в курсе, при этом обвиняя в некомпетентности. Это смешно выглядит. И хорошо что вы удалили из профайла ссылку на zippy.com.ua . А то вдруг куда то на работу будете устраиваться и найдут ваши комменты с обвинениями(необоснованными) и бредом ни о чем.

И еще хорошо тем, что демо забаганее и падает чуть реже чем демо написаное индусами

Вариант — сесть дочитать книгу по Яве и пойти в нормальную контору на плохого мидла я так понял отпадает?

Мне тяжело понять, неужто тяжело найти в инете вопросник — прочитать, разобраться и идти нормально работать?

Наверное, если было все так просто, то не было бы топиков типа: «Помогите найти первую работу», «Возьмите junior/trainee» и тд.

Если предложили то иди, не факт что второе собеседование пройдешь. Уйти можно всегда, я сам с начала августа работу ищу.

За это и переживаю.
Удачи Вам в поисках.

если у вас еще нет второго оффера, то о чем вообще думать?
тем более, если первый вариант еще и интереснее.

Интереснее! Это вообще то ради чего я начал учить java. )

Тут, если можно, подробнее.
Почему?

Опыт с WebSphere будет ценен только на проектах с WebSphere.
Если ты отработаешь там несколько лет, ты станешь потерян для мира разработки ПО. Ладно, бы у тебя был бы еще какой-нибудь другой опыт, но окунаться с молодости в такие глубины энтерпрайза очень рискованно.

Спасибо, за ответ.

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

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

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

Судя по всему, жены и трех детей за спиной у вас нет. Надеюсь ипотеки/кредитного форд-фокуса тоже.

Так чего вы голову себе морочите? Даже если эта фирма через полгода развалится и задолжает вам зп, вы от этого не помрете. А вот опыт(для вас это сейчас самое важное) — получите.

Чесслово, как будто контракт на 20 лет заключаете.

Нет, не на 20 :)
Детей нет, кредитов тоже.
Опыт нужен позарез.
Работа вот только не по трудовой. Как потом докажу что есть опыт работы?

можно подумать, в Украине айтишники поголовно по трудовой работают))

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

Как потом докажу что есть опыт работы?
Такое любят в гос. секторе, где густые консервативные заросли x_x Взамен на мин. зар. плату, с тебя еще высшее математическое образование спросят xD (даже принтер не дадут установить без профильного диплома и ОР в 5 лет).
Для всего остального есть GitHub.

на собеседовании и так все видно будет )

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

для компании это будет очевидным после второго — третьего вопроса по теме :)

оффер, на junior android developer. Но! Не официальное трудоустройство, команда молодая, пока без офиса(работа из дому)
Я бы на вашем месте в такое не шел хотя бы что сэкономить себе нервы. Лучше попробуйте сходить на собеседование в какого-то лидера рынка или в нормальную компанию у которой есть хотя бы офис и контракт с ЧП-шником.
Думать до понедельника — типичный психологический прием аферистов, чтобы жертва потеряла бдительность.

Это я попросил отложить принятие решения.

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

Киев. Фирмы есть, но на собеседования зовут редко. Хожу с июня.

Что-то я не могу увязать эти моменты

Я долго ищу первую работу, наверняка как и многие
Есть на руках предложение, или как модно говорить оффер, на junior android developer.
Но еще нужно пройти собеседование, тех тест и тд.

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

Да, Вы все правильно поняли.
Допустим я прошел второе собеседование и есть два предложения (нужно было так ставить вопрос). Что лучше выбрать для своего будущего?

Допустим я прошел второе собеседование и есть два предложения
Для начала пройдите второе собеседование и получите оффер

А к тому моменту уже какое-то время поработай на первой работе, будет понятно насколько она то что надо.

Надежнее EE.Вакансий было и будет на EE больше, чем на Андроиде. Зарплата точно не хуже. Выбор у Вас, по сути, между более надежным или более интересным будущим.

Да, именно такой выбор и стоит.

Но офер-то есть на Андроид. Как по мне, можно поработать здесь.
EE — совершенно другой мир, но никто не запрещает в свободное от работы время освоить в минимальном объеме SQL, сервлеты, Spring, JPA и через год переходить на EE, если будет желание.
С пятью годами опыта переходить с одного на другое сложнее — не хочется терять в зарплате. Но один год мало что меняет.

Подписаться на комментарии