Як я можу переглянути свій прогрес як сольний молодший розробник [закрито]


38

Зараз я працюю в компанії на 2 особи, як соло-первинний розробник. Мій бос отримує клієнтів, знущається над шаблонами дизайну PNG і передає їх мені.

Ця система працює чудово, і мені дуже подобається.

Типи проектів, над якими я працюю, призначені для малого та середнього бізнесу, і вони, як правило, хочуть мати систему CMS. Розроблений з нуля, я буду створювати персоналізований сервер для додавання / редагування / видалення категорій, тегів, продуктів тощо, а потім виводити їх на передній частині відповідно до шаблону дизайну, який мені передав. З плином часу проекти збільшувалися за складністю, завдяки функції кошика / замовлення та інші поширені функції електронної комерції.

Знову ж таки, ця система працює чудово, і мені дуже подобається.

Моє питання - це мій особистий розвиток як програміста. Я багато часу займаю, читаючи блоги програмування, переглядаючи stackexchange, читаю запропоновані книги з програмування (зараз на темі « Прагматичний програміст », справді хороший поки що), виконуючи фізичні вправи ( lumosity.com та математичні проблеми khanacademy ), роблю багато фізичних вправ та інших видів особистого розвитку.

Я не можу не відчути, що мені не вистачає відгуків, критики. Мій начальник чудовий і ніколи не стримує похвалу стосовно моєї роботи, але він, на жаль, або зайнятий, щоб перевірити мій код, або чесно кажучи, я не думаю, що це одна з його спеціальностей, і тому не можу надати відгук .

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

Тож, що я зробив, я розробив невеликий додаток "Сімейний бюджет" і намагався зробити це так само чисто і ефективно, як я в даний час знаю як.

Що я хочу знати, чи є десь я можу подати цю програму, і чи мають деякі досвідчені розробники надають відгуки. Це вимагає не просто підрозділу мого коду, як-от «codereview.stackexchange», це весь мій робочий процес, який я хочу критикувати.

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

Повідомте мене, чи можу я надати будь-яку додаткову інформацію, щоб допомогти уточнити, чи якщо це не правильне місце для такого типу питань, я заздалегідь вибачаюся. Не хотів використовувати Reddit, оскільки я вважав, що ця спільнота сприяє більш продуманим відповідям.


3
Як раніше не так давній молодший розробник, мені здається, погана ідея дозволити молодшому розробнику дивитися таким чином. Не кажучи вже про макет PNG навряд чи дає вам інформацію, необхідну для написання ефективної CMS. Плюс чому постійно писати CMS, коли вимкнення самостіальних налаштувань є більш ефективним, ніж розробник соло може писати в будь-який розумний час для клієнта, включаючи мікро CMS.
Ріг

2
Ну спочатку у нього був власний будинок CMS, який був побудований в Coldfusion. Я вивчив мову через спроби та помилки, і ми виконали кілька проектів, використовуючи її. З часом, хоча я переконав його, було б хорошою ідеєю рухатися до PHP, оскільки я мав більше досвіду його використання, і є більшу спільноту, на яку можна покластися (не маючи начальства, я сильно покладаюся на google). Відтоді я поступово будував модуль CMS для багаторазового використання в ciBonfire. Він іде дуже добре, система каталогізації майже повністю повна. Проблема в тому, що я навчаюсь, як іти, у нас є клієнти, які порадують.
hoppipolla

2
@OliverHyde "Проблема в тому, що я навчаюсь, коли я йду, у нас є клієнти, щоб догодити". Це не буде інакше деінде.

Відповіді:


21

Ви знаходитесь на правильному шляху до вдосконалення своїх навичок, і зрозуміло, що ви не впевнені у надійності та готовності вашого коду до підприємства.

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

В якості посилання на вивчення кращих практик я рекомендую приєднатися до проектів з відкритим кодом, які розміщуються безкоштовно для пристрасних / цікавих програмістів. Вони справді допоможуть вам зрозуміти, як використовувати найкращі практики та як визначитися з дизайном додатків. Крім того, спробуйте долучитися до розробки проектів з відкритим кодом, оскільки це значно підвищить ваше самонавчання та вдосконалення.

Я також рекомендую відвідувати заходи місцевої громади для розробників програмного забезпечення. Деякі з цих груп ви можете знайти на сайті communitymegaphone.com . Поговоріть з місцевими друзями-програмістами, вони здебільшого хороші люди, які не проти допомогти колезі.


Гм, можливо, я буду розбиратися в приєднанні до проектів з відкритим кодом, не знаю, з чого почати: / Треба пройти кілька досліджень. Щодо громадських подій, я збираюся на місцевих зустрічах, у Новій Зеландії їх мало, порівняно з тим, що це виглядає, як ти потрапляєш у штати, але трапляються і дуже корисні. Дякуємо за відгук.
hoppipolla

Однозначно залучайтеся до інших реальних людей, які дивляться на ваш код. Замін на це немає.
jeffreypriebe

Так, я прибираю додаток "особистого бюджету", і я надішлю його на оцінку, можливо, наново або на інших форумах спільноти.
hoppipolla

9

Отримавши більше досвіду, ви, безумовно, можете повернутися та переглянути свої попередні проекти / код, щоб побачити, де ви пішли не так. Заднім числом - це прекрасна річ. Я знаю фактично, що я переглянув код / ​​документацію, яку я написав x тому назад, і зрозумів, де я помилився і де міг би покращитись.

Те, що ви читаєте блоги, книги, ІП тощо, повинно давати вам більше розуміння щодо програмування як частини вашого власного розвитку, а також випробування та помилки та еволюція ваших проектів та коду, безумовно, повинно бути свідченням того, що ви ' повторне вдосконалення. Самокритика може бути дуже хорошою справою.

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

Крім того, ви можете написати деякі матеріали з відкритих джерел і підкинути їх на github (або еквівалент). Спільнота з відкритим кодом неодмінно критикує вашу роботу та покращить її там, де вони вважають за потрібне.

Зрештою, якщо продукція, яку ви виробляєте, працює за призначенням, відповідає бізнес-вимогам і є ремонтом, ви робите щось правильно.

Для питань концептуального програмування, шаблонів тощо. Ви завжди можете розміщувати ці питання тут на PSE, а щодо питань реалізації коду на SO.


Будьте здорові, я думаю, можливо, я зламаю бюджетну програму та опублікую кілька фрагментів на перегляді коду.
hoppipolla

3

Дозвольте мені поділитися моєю думкою, декількома словами мудрості та деякими питаннями, про які вам варто задуматися.

Будучи досвідченим програмістом, я виявив, що найкращим кодом є той, який простий (подивіться на концепцію KISS) та легший для зміни інших програмістів.

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

Якщо ви будете слідувати вищесказаному, ви вже на хорошій дорозі.

Крім того, оскільки розробники є чимось на зразок архітекторів, я дам вам дуже важливу приказку, над якою слід задуматися;

  1. «Досконалість досягається не тоді, коли не залишається нічого додати, а коли не залишається нічого, щоб забрати» - Антуан де Сент-Екзюпері.

і

  1. "Прагнення до досконалості мотивує вас; прагнення до досконалості деморалізує", - Гарріет Беріл Брайкер.

Однак,

  1. "Багато подій, приблизно 80% наслідків походять від 20% причин" - принцип Парето

З урахуванням сказаного я хочу, щоб ви зрозуміли, що між зусиллям та ефектом, вартістю та якістю є тонкий баланс.

І питання, над якими слід задуматися;

  1. Що мені подобається робити за п’ять років попереду?
  2. Чи вдасться покращити мої навички кодування користь моїй професійній кар’єрі в перспективі?

1

Ви можете перевірити https://codereview.stackexchange.com/

Це було б чудовим місцем, щоб отримати відгуки про свій код або дизайн від досвідчених фахівців.


Так, я вважаю, що суть мого питання полягала в тому, чи є повноцінним додатком, придатним для публікації там, чи є десь ще я можу це зробити. Здається, що перегляд коду є більш націленим, як фрагменти коду, який слід вивчити. В основному надайте посилання на проект github і нехай вони розпущені. Сьогодні я прибираю це питання і буду шукати деякі форуми спільноти, щоб опублікувати посилання. :)
hoppipolla

1
Одразу все може бути дуже багато для одного розробника, щоб пожовкнути на tme. meta.codereview.stackexchange.com/questions/537/… каже, спробуйте детально . Це не підходить для перегляду коду, але проектна документація високого рівня може бути корисною для рецензента, який дивиться на вашу кодову базу для першого імені
Джессіка Браун

@OliverHyde Якщо ви опублікуєте один вихідний файл, скажімо, один із найскладніших, ви отримаєте відгук про цей файл, який стосується всього проекту. Це буде хорошим способом отримати зворотній зв'язок щодо мови вашої програми та стилю кодування. Якщо ви шукаєте відгуки про загальний дизайн програми, ви можете (відповідно до FAQ) розмістити їх на цьому веб-сайті.

1

Продовжуйте читати книги, блоги та Q&A. Якщо ви хочете вдосконалити себе більш соціальним шляхом, чому б не зайнятися роботою над проектом з відкритим кодом? Я не маю на увазі створити власний проект , а працювати над існуючим.

Оскільки ви єдиний розробник у цій компанії, я думаю, що можливо, коли-небудь ви наймете когось іншого. Скажіть собі, що цього дня хлопцеві доведеться прочитати ваш код. Ви вже пишете якусь документацію про свій інструмент? Маючи на увазі, що вашу роботу можуть читати інші люди - це гарна річ для розробників соло та допоможе вам зробити кращий код.


1
Так, це я почав робити зі своїм кодуванням зараз. Мій бос підказав, що він може поглянути на наймання додаткового розробника в наступному році .... ставка
перевершить

1

Я в подібній ситуації, як ви, найняли єдиного програміста для компанії на 5 осіб, і лише одна з них безпосередньо пов'язана з програмами, до яких я розробляю / додаю. На щастя, мені не довелося створювати нічого з нуля, але до цих пір лише модифіковані програми, які створив мій попередник. Роблячи це, я вважаю, що я вже вдосконалив себе, визначивши, які частини його коду були хорошими, які частини були поганими та як їх можна вдосконалити.

Читання коду є величезною частиною вдосконалення власного кодування, тому, перш за все, я пропоную вам знайти проект з відкритим кодом, прочитати код, зрозуміти його та спробувати оцінити, що добре, що таке погано і що можна вдосконалити. Можливо, навіть написати кодекс-огляд про це у своєму блозі.

Ура!


Так ура! Я працюю тут вже дещо довше і знайшов собі непоганий ритм використання веб-сайтів з перегляду коду в Інтернеті та самоперевірки.
hoppipolla

-1

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

Ви чітко маєте всі правильні мотивації в бажанні.


4
Це не повинно бути першим варіантом. ОП насолоджується своєю роботою, і він, мабуть, також отримав гідного начальника, що сьогодні здається рідкісним. Перш ніж стрибати, подумайте, що ви можете закінчити роботу, яку вам не подобається, з поганим начальником, і немає гарантій, що ви насправді навчитесь новому.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.