Моя новая работа на 75% состоит из проприетарного программного обеспечения. Стоит ли мне беспокоиться?

Так что это моя вторая работа после колледжа. Работа 1 была в команде, занимающейся встраиваемым программным обеспечением, поэтому я много занимался C, Javascript, HTML, CSS и немного Python и Java. Эта новая работа упомянула Java во время собеседования, но я начинаю понимать, что большая часть того, что я делаю, будет на проприетарном языке, который не является полностью реальным кодированием, а больше переходит к объектам в пользовательском интерфейсе и их настройке. . Он использует не документ для кодирования, а свои собственные инструменты, которые автоматически генерируют HTML/Javascript/CSS с написанными вами операторами. Тем не менее, некоторые из спринтов (это SCRUM-команда) действительно работают над основным движком на Java, и я знаю, что последние три спринта были все на Java, но я не уверен, как часто это происходит.

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

Еще мне очень нравится моя команда, зарплата достойная, и место хорошее. Эта часть на самом деле является моей единственной большой заботой, которая заставляет меня очень беспокоиться.

Редактировать: я беспокоюсь о том, как это будет выглядеть, если я уйду через 3-5 лет, в ожидании того, смогу ли я работать в этот момент. Я забыл упомянуть, что большая часть разработки осуществляется через тестирование, а инструмент тестирования для платформы еще не готов, поэтому мы создаем JUnits для тестирования всего нашего кода. В некотором смысле я все еще буду использовать Java и изучать Java 8 для JUnits и время от времени работать над самим движком. Я могу выделить эти части, но я просто беспокоюсь о том, чтобы пойти в неправильном направлении, что сделает меня менее конкурентоспособным по сравнению с другими на рынке труда.

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

Ответы (4)

большая часть того, что я буду делать, будет на проприетарном языке, который не является полностью реальным кодированием, а больше входит в объекты в пользовательском интерфейсе и настраивается под них. Он использует не документ для кодирования, а свои собственные инструменты, которые автоматически генерируют HTML/Javascript/CSS с написанными вами операторами.

Вероятно, это очень плохо для карьеры в разработке программного обеспечения. Это звучит как двоюродный брат использования Dreamweaver или чего-то подобного для создания веб-сайта; когда это был рынок труда, его в основном занимали технически склонные нетехнические люди, если вы понимаете, что я имею в виду.

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

Мое описание, возможно, было немного неправильным. Продукт позволяет пользователям перетаскивать и создавать блок-схемы для веб-приложений, поэтому я этого не делаю. Я все еще должен следовать хорошим методам кодирования для получения хорошего кода, но интерфейс — это слой над основным интерфейсом, и все это находится в студии разработчиков. Поэтому я бы добавил функции, добавив внутреннюю логику к правилам или объектам для функции. Я понимаю, о чем вы говорите, но это что-то среднее между Dreamweaver и реальным программированием, как если бы мы создавали продукт, похожий на Dreamweaver, через пользовательский интерфейс.
Когда вы говорите «добавление внутренней логики», это означает написание кода или модификацию чего-то еще? Если вы не пишете фактический код, вам будет сложно убедить кого-то в том, что это релевантный опыт программирования.

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

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

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

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

Кроме того, здесь есть совершенно другой фактор: буквально написание программного обеспечения — не единственный возможный выбор карьеры, который вы можете сделать. Есть все виды работ, которые тесно связаны между собой, но которые очень сильно зависят от конкретного сценария, который вы обсуждаете — использование навыков работы с программным обеспечением для настройки/расширения/модификации готовых приложений — например, быть «Разработчиком Salesforce» или « Разработчик Sharepoint» или «Внедрение ERP» и так далее. Часто эти роли пользуются большим спросом, поскольку для них требуется кто-то, кто может мыслить с точки зрения манипулирования инструментом, который приводит к созданию программного обеспечения, а не непосредственного написания программного обеспечения. (добавлен этот абзац в ответ на комментарий ниже).

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

Согласованный. Есть много людей, создающих очень полезное программное обеспечение с небольшим или узловым кодированием. В некоторых случаях они также пользуются большим спросом и получают столько же или даже больше, чем разработчики, которые много пишут код, например, разработчики Salesforce, разработчики бизнес-аналитики с навыками PowerBI / Tableau.
Да... Я работаю в Pegasystems, которая, как мне кажется, очень похожа на Salesforce, так что в основном это то, о чем я прошу. Этот ответ действительно помогает, спасибо.
@gwp Отличное замечание, я сделал правку, подчеркнувшую это.
@VarunBehl Да, вы делаете именно то, что указал gwp. Я начал свою карьеру, выполняя очень похожую работу много лет назад, и я очень доволен направлением, в котором она меня повела.

Это совсем не опасно для вашей карьеры. Представьте, что вместо этого вы используете новейшую передовую среду JavaScript (или любую другую). Через два года все перейдут на что-то еще более новое и забудут, что оно вообще существовало. Такова природа отрасли. Так был ли этот опыт потрачен впустую? Большинство людей сказали бы, что это все еще имеет значение.

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

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

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

Как уже упоминалось в ответе dbeer, этот тип задачи не совсем оптимален для будущей работы, и ее правильное вращение будет затруднено.

У меня также была работа с непонятным языком (RTE) даже внутри домена (обмен сообщениями B2B/EDI). Но то, как я описал это, было через язык, на котором он построен (стандартный C, адаптированный для предметной области - чрезвычайно большие объемы небольших и одинаково структурированных документов), который был гораздо полезнее для понимания интервьюеров.

С тех пор я дольше работал над более «традиционными» языками, поэтому обычно просто упоминаю разработку RTE в коротком предложении.