Как стать автором
Обновить
0
0
Александр @tikhiys

System Analyst

Отправить сообщение

«Хочешь быть системным архитектором? Там только свет и чистота…»

Время на прочтение6 мин
Количество просмотров57K


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

— Рома, я задолбался быть инженером. Всё, ухожу!
Он ласково улыбнулся и сказал:
— Хорошо. Будешь системным архитектором. Там только свет и чистота. Выспись и приходи, расскажу, что будешь делать.

Я был молодым и наивным. Выспался и пришёл. Тогда начал постепенно становиться архитектором (сейчас стал), и могу смело сказать: света и чистоты тут столько же, сколько в буднях инженера. А вот ответственности больше. Поэтому — нет, не надо быть архитектором, если вы не понимаете, на что идёте.

Но! Если понимаете — это будет очень увлекательное приключение.
Читать дальше →
Всего голосов 73: ↑70 и ↓3+67
Комментарии111

Учебник по языку SQL (DDL, DML) на примере диалекта MS SQL Server. Часть четвертая

Время на прочтение32 мин
Количество просмотров355K

Предыдущие части




В данной части мы рассмотрим


Многотабличные запросы:
  • Операции горизонтального соединения таблиц – JOIN
  • Связь таблиц при помощи WHERE-условия
  • Операции вертикального объединения результатов запросов – UNION

Работу с подзапросами:
  • Подзапросы в блоках FROM, SELECT
  • Подзапрос в конструкции APPLY
  • Использование предложения WITH
  • Подзапросы в блоке WHERE:
    • Групповое сравнение — ALL, ANY
    • Условие EXISTS
    • Условие IN

Читать дальше →
Всего голосов 21: ↑17 и ↓4+13
Комментарии6

Собеседование наоборот: вопросы соискателя к компании

Время на прочтение6 мин
Количество просмотров75K
Всем привет! Хочу очередной раз поднять тему про найм. Только я собираюсь поговорить об этом с точки зрения кандидата, а не работодателя. Ведь собеседование, вопреки многим стереотипам, процесс двусторонний — вопросы может задавать не только интервьюер, но и сам соискатель. За прошлый год я провёл порядочное количество собеседований, и абсолютное большинство кандидатов огорчило меня отсутствием вопросов о компании, всего 5 человек стали меня расспрашивать о работе.

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

image
Читать дальше →
Всего голосов 137: ↑131 и ↓6+125
Комментарии130

Сайты для обучения программированию: Топ 100

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

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

Итак, сайты для обучения программированию онлайн, ТОП 100:
Читать дальше →
Всего голосов 54: ↑50 и ↓4+46
Комментарии61

Что такое API

Время на прочтение9 мин
Количество просмотров994K

Содержание



Слово «API» мелькает в вакансиях даже для начинающих тестировщиков. То REST API, то SOAP API, то просто API. Что же это за зверь такой? Давайте разбираться!

— А зачем это мне? Я вообще-то web тестирую! Вот если пойду в автоматизацию, тогда да… Ну, еще это в enterprise тестируют, я слышал…

А вот и нет! Про API полезно знать любому тестировщику. Потому что по нему системы взаимодействуют между собой. И это взаимодействие вы видите каждый день даже на самых простых и захудалых сайтах.
Любая оплата идет через API платежной системы. Купил билет в кино? Маечку в онлайн-магазине? Книжку? Как только жмешь «оплатить», сайт соединяет тебя с платежной системой.

Но даже если у вас нет интеграции с другими системами, у вас всё равно есть API! Потому что система внутри себя тоже общается по api. И пока фронт-разработчик усиленно пилит GUI (графический интерфейс), вы можете:

  • скучать в ожидании;
  • проверять логику работы по API

Конечно, я за второй вариант! Так что давайте разбираться, что же такое API. Можно посмотреть видео на youtube, или прочитать дальше в виде статьи.

Что такое API


image

API (Application programming interface) — это контракт, который предоставляет программа. «Ко мне можно обращаться так и так, я обязуюсь делать то и это».

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

  • мои обязанности — внести такую то сумму,
  • обязанность продавца — дать машину.

Перевести можно, да. Но никто так не делает ¯\_(ツ)_/¯
Читать дальше →
Всего голосов 50: ↑38 и ↓12+26
Комментарии22

Подходы к проектированию RESTful API

Время на прочтение17 мин
Количество просмотров138K

Автор: Вячеслав Михайлов, Solutions Architect.

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

Часть 1. Теория


Итак, как мы все знаем, API — application programming interface (интерфейс программирования приложений), набор правил и механизмов, с помощью которых одно приложение или компонент взаимодействует с другими

Почему хороший API — это важно?

  • Простота использования и поддержки. Хороший API просто использовать и поддерживать.
  • Хорошая конверсия в среде разработчиков. Если всем нравится ваш API, к вам приходят новые клиенты и пользователи.
  • Выше популярность вашего сервиса. Чем больше пользователей API, тем выше популярность вашего сервиса.
  • Лучше изоляция компонентов. Чем лучше структура API, тем лучше изоляция компонентов.
  • Хорошее впечатление о продукте. API — это как бы UI разработчиков; это то, на что разработчики обращают внимание в первую очередь при встрече с продуктом. Если API кривой, вы как технический эксперт не будете рекомендовать компаниям использовать такой продукт, приобретая что-то стороннее.


Теперь посмотрим, какие бывают виды API.

Виды API по способу реализации:
  • Web service APIs
    • XML-RPC and JSON-RPC
    • SOAP
    • REST

  • WebSockets APIs
  • Library-based APIs
    • Java Script

  • Class-based APIs
    • C# API
    • Java



Виды API по категориям применения:

  • OS function and routines
    • Access to file system
    • Access to user interface

  • Object remoting APIs
    • CORBA
    • .Net remoting

  • Hardware APIs
    • Video acceleration (OpenCL…)
    • Hard disk drives
    • PCI bus



Читать дальше →
Всего голосов 26: ↑24 и ↓2+22
Комментарии37

Как научиться разработке на Python: новый видеокурс Яндекса

Время на прочтение6 мин
Количество просмотров244K
Осенью прошлого года в московском офисе Яндекса прошла первая Школа бэкенд-разработки. Мы сняли занятия на видео и сегодня рады поделиться на Хабре полным видеокурсом Школы. Он позволит вам научиться промышленной разработке на Python. Авторы лекций — опытные разработчики в Яндексе. К каждому видео приложены ссылки на примеры и полезные материалы.

Для изучения курса нужно знать основы Python и понимать, как приложения развёртываются на серверах. Мы ждём, что вы умеете делать запросы к базам данных и знаете, как создаются веб‑приложения, — хотя бы на начальном уровне.
Читать дальше →
Всего голосов 70: ↑70 и ↓0+70
Комментарии41

Бизнес-аналитик и системный аналитик в IT. Разбираемся в сортах

Время на прочтение8 мин
Количество просмотров76K

Проблема


У некоторых моих знакомых, коллег, руководителей, эйчаров, представителей «бизнеса» в головах образовалась путаница между видами аналитиков. Понятие «аналитик» используется для совсем не похожих друг на друга профессий — бизнес-аналитик (БА), системный аналитик (СА), дата аналитик, UX-аналитик, аналитик информационной безопасности, аналитик бизнес-процессов и ещё 5–10 других, все эти виды имеют массу различий. Сейчас про конкретные два, наиболее спутанные между собой, но сильно различающиеся в отечественных IT-реалиях.


Читать дальше →
Всего голосов 10: ↑9 и ↓1+8
Комментарии14

Развитие аналитиков

Время на прочтение6 мин
Количество просмотров16K
Как правило, все заинтересованы в том, чтобы расти, развивать свои профессиональные качества. Аналитики – не исключение. В данной статье я описала способы почерпнуть новые знания в сфере анализа.

"

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

  • Начинающие энтузиасты
  • Разочарованные ученики
  • Осторожные исполнители
  • Уверенные профессионалы
Читать дальше →
Всего голосов 9: ↑8 и ↓1+7
Комментарии5

Графический интерфейс на Python за 5 минут

Время на прочтение4 мин
Количество просмотров291K
image

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

Однако иногда ваша целевая аудитория не сильно подкована технически. Люди не против использовать ваши скрипты на Python до тех пор пока им не нужно смотреть на одну строку кода. В таком случае скриптов командной строки будет недостаточно. В идеале вам нужен графический интерфейс. Цель этого поста использовать только Python.

Библиотеки Python, которые можно использовать для графического интерфейса


По сути, есть 3 большие библиотеки Python для графического интерфейса; Tkinter, wxPython и PyQT. Рассматривая их, я не нашел там ничего из того, что мне нравится в Python. Библиотеки Python, как правило, очень хорошо абстрагируются от супер-технических моментов. Если бы мне нужно было работать с объектно-ориентированным программированием, я мог бы с таким же успехом загрузить Java или .Net.
Читать дальше →
Всего голосов 28: ↑25 и ↓3+22
Комментарии9

JSON Schema. Быть или не быть?

Время на прочтение14 мин
Количество просмотров103K
Архитектура: искусство делать излишнее необходимым.

Фредерик Кислер

Ни для кого давно уже не секрет, что для любого web-сервиса на протоколе SOAP с сообщениями в формате XML верным и проверенным временем решением является предварительная разработка XML Schema (xsd-схемы), описывающей типы данных и структуру XML сообщений. При этом подходе у разработчиков существует явное преимущество: у них есть строгие стандартизированные правила по структуре сообщений, которые заданы в схеме, число правил конечно, и они позволяют автоматизировать проверку любого нового сообщения в формате XML.
Читать дальше →
Всего голосов 25: ↑23 и ↓2+21
Комментарии36

Бизнес и системный аналитик. Что нужно знать

Время на прочтение9 мин
Количество просмотров55K
image

Приветствую! Меня зовут Сергей, и я — бизнес/системный аналитик. В IT отрасли работаю около 8 лет, начиная с сопровождения, перетекающего в тестирование, и продолжая аналитикой: как бизнес, так и системной. Отдельно бизнес и отдельно системным аналитиком я ещё не работал.

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

Для кого, на мой взгляд, будет полезна статья:

  • Начинающим бизнес / системным аналитикам;
  • Аналитикам, желающим и дальше прокачивать свои проф. навыки;
  • Возможно, менеджерам по подбору персонала.
Читать дальше →
Всего голосов 5: ↑4 и ↓1+3
Комментарии11

Не боги горшки обжигают

Время на прочтение5 мин
Количество просмотров69K
Дима: Читал эту статью? (Разработчики — никакая не элита, а голые короли индустрии). Что скажешь?

Я: Прочитал эту статью вчера
Я: В двух словах моё мнение целиком не выразить
Я: Это, скорее, тянет на получасовой разговор. Минимум

Дисклеймер


  1. Несмотря на то, что есть, о чем сказать, постараюсь не превратить своё повествование в безумный лонгрид
  2. Мы немного коснёмся рыночных и экономических отношений, но давайте постараемся не удариться в политическую дискуссию
  3. Это моя первая статья на Хабре. Почти уверен, что совершаю “литературное” самоубийство, но хочется ответить на некоторые вопросы как минимум самому себе

Разработчики действительно УЖЕ не элита



Читать дальше →
Всего голосов 187: ↑165 и ↓22+143
Комментарии308

Как писать лёгкие тексты

Время на прочтение2 мин
Количество просмотров22K
Я пишу много текстов, в основном всякую чушь, но, обычно, даже хейтеры говорят, что текст читается легко. Если хотите сделать свои тексты (письма, например) легче, бегом сюда.

Тут я ничего не придумывал, всё из книжки «Слово живое и мёртвое» Норы Галь, советского переводчика, редактора и критика.
Читать дальше →
Всего голосов 83: ↑71 и ↓12+59
Комментарии58

Из разработчика в PM-а за 90 дней

Время на прочтение21 мин
Количество просмотров24K


В последнее время в сфере IT наблюдается определенная тенденция. Стартапы пренебрегают менеджментом, и все решения, как правило, принимает основатель. Когда стартап начинает расти, возникает необходимость в новых сотрудниках. И тогда срочно требуются менеджеры. Основатель обращается за помощью к своему лучшему разработчику: «Я в беде. Сможешь управлять этой командой вместо меня?»
Читать дальше →
Всего голосов 21: ↑19 и ↓2+17
Комментарии2
Во многих IT-компаниях продуктовыми менеджерами становятся бывшие программисты. Это логично, ведь они понимают процесс разработки «изнутри». Но даже они совершают ошибки из-за непонимания процессов, отсутствия навыков управления и незнания инструментов. Так первое время было и со мной, поэтому сегодня я расскажу о своем опыте перехода из разработчиков в ПМы, приятных открытиях и косяках, а также о том, что помогло облегчить такую «карьерную трансформацию». Чтобы не солировать, дополню историю цитатами моих друзей и коллег по отрасли.
Читать далее
Всего голосов 43: ↑32 и ↓11+21
Комментарии12
Если дома мы можем сами определять конфигурацию рабочего места, то в компаниях по-разному подходят к офисному проектированию. Где-то размышляют утилитарно и ставят обычные noname офисные столы рядами, как скамьи для гребцов на галере. Как итог — работать в таком офисе становится неприятно. А если попробовать что-то особенное? Повлияет ли это на продуктивность и насколько такой подход оправдан?
Подробности — под катом
Всего голосов 44: ↑41 и ↓3+38
Комментарии218

Эволюционный дизайн баз данных

Время на прочтение32 мин
Количество просмотров21K


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


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


В последнее десятилетие мы наблюдаем рост гибких методологий. По сравнению со своими предшественниками, они изменяют требования к дизайну баз данных. Одно из важнейших среди требований – идея эволюционной архитектуры. В гибком проекте вы предполагаете, что не можете заранее поправить требования системы. В результате, иметь детализированную, четкую стадию дизайна в начале проекта становится непрактично. Архитектура системы должна эволюционировать одновременно с итерациями софта. Гибкие методы, в частности, экстремальное программирование (XP), имеют набор методик, которые делают эту эволюционную архитектуру практичной.

Читать дальше →
Всего голосов 29: ↑27 и ↓2+25
Комментарии0

Документирование в разработке ПО

Время на прочтение5 мин
Количество просмотров144K

INTRO


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

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

Итак, для начала отвечу на главный вопрос: для чего всё это нужно.
Есть несколько причин.
Читать дальше →
Всего голосов 26: ↑26 и ↓0+26
Комментарии42

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность