• Какие навыки необходимы для работы team lead?

    platotel
    @platotel
    IT Product Manager
    Рекомендую stratoplan.ru. У них полезные материалы, без воды. Если есть желание и возможность, то приобретайте платные материалы. Бесплатных - тоже много: толковый блог, PDF-материалы, бесплатные вебинары. Можно ещё www.happy-pm.com/blog посмотреть. Это сайт одного из создателей Стратоплана.
    Ответ написан
    Комментировать
  • Какие навыки необходимы для работы team lead?

    wolf47
    @wolf47
    Айтишник, немного програмирую на JS
    просто знать профиль, видеть будущую цель.
    А для чего тогда нужен тим лид?

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

    Примерно вот так.

    Я думаю просто нужно обладать предметными знаниями, иметь опыт работы в сфере. А дальше, когда ты понимаю чего от тебя хотят, ты можешь направить программистов куда надо
    Ответ написан
    Комментировать
  • Какие навыки необходимы для работы team lead?

    Вот тут всё очень хорошо разложено.
    Ответ написан
    Комментировать
  • Какую литературу почитать о стандартных решениях в веб-приложениях для бизнеса?

    max-kuznetsov
    @max-kuznetsov
    Главный IT-архитектор
    Есть хорошая книжка, которая может служить и учебником, и справочником. "Руководство Microsoft по проектированию архитектуры приложений, 2 издание" (download.microsoft.com/documents/rus/msdn/%D1%80%D...).
    Если закрыть глаза на рекомендации по использованию именно технологий Microsoft, то будет вполне целостная картина того, как решаются самые разные вопросы проектирования, от самого верхнего уровня до деталей реализации. Рассматриваются, в том числе, и вопросы, связанные с реализацией web-приложений и сервисов, причём в общем контексте enterprise-системы.
    Ответ написан
    Комментировать
  • Как организовать Wi-Fi сеть в коттеджном поселке?

    ifaustrue
    @ifaustrue
    Пишу интересное в теллеграмм канале @cooladmin
    Проект в вашем случае разделяется на вот такие основные составляющие:
    1. Легализация. Вам необходимо разрешение от надзорного органа на использование частоты\частот и лицензия оператора (на передачу и тыды и тыпы). Это скорее всего минимум, возможно что-то ещё.
    2. Организация и расчёт самой сети. Нужно учесть препятствия, высоковольтные провода, наводки от заборов \ крыш \ трансформаторных будок, отражения от домов и много всего. Лучше всего использовать профессиональный софт (например Ekahau) и любую простую точку доступа на аккуме, перенося её от разных углов до центра зоны покрытия и измеряя силу и карту покрытия. Этот же софт поможет сделать рассчёт. А если ещё и GPS приёмник по синезубу подключить - буде вообще всё круто.
    3. Сетевая часть. Нужно железо и сеть. Можно строить на чистом беспроводе (беспроводные линки между точками и вещание само собой тоже по воздуху), можно ложить медь \ оптику, можно брать 5ГГц для опорных каналов и на 2,4 вещать. Я рекомендую Routeboard ))
    4. Биллинг, роуминг, оплаты, тарифы, QoS. Вообще все эти задачи можно решать без привязки к среде передачи. Такого навалом на просторах по запросу "биллинг". В том же Mikrotik есть встроенный, но можно взять что-то иное, трафик инспектор, например.

    В теории дальность вашего вайфая и его качество будет в первую очередь зависеть от клиентских устройств, а не от операторских, так как первые будут иметь куда более слабые приёмопередатчики, чем ваши "метровые 30+ db" антенны. В целом проект крутой, но организовать его просто задавая на тостере вопросы и получая ответы - не реально. Нужен профи с опытом и он должен быть у вас там, на месте, в посёлке.
    Ответ написан
    Комментировать
  • Каков план личностного развития JavaScript программиста с нуля?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    1. Выучить русский язык. Узнать, что такое "личностное развитие" и чем оно отличается от профессионального.
    Ответ написан
    2 комментария
  • Какими программными средствами организовывается управление безопасностью сервера?

    merryjane
    @merryjane
    Системный администратор
    Минимально это реализуемо, но не из коробки и не в полном объеме (а может и в полном если копнуть глубже).
    Делается шлюз выпускающий пользователей в инет. На нем iptables закрывают все порты, а весь трафик для web-портов вроде 80, 8080, 8000 и тп заворачивается на порт проси-сервера.
    Прокси-сервер может быть тут же на шлюзе. Может быть на другом сервере или виртуалке. Например squid. К нему можно прикрутить и черные\белые списки и антивирус и еще кучу политик. Проблема в том, что для обработки им https трафика нужно его собирать руками с нужным модулем и прописывать руками прокси в браузере пользователя(возможно это сейчас пофикшено). К нему есть плагины для демонстрации статистики (не в отдельных личных кабинетах, но хотябы общей). К нему можно прикрутить авторизацию и даже авторизацию из AD. Если к этому добавит еще SAMS будет наверное более функционально (вот пример статьи о чем идет речь: habrahabr.ru/post/199302/).
    Ключевые слова для вас если вы новичек: iptables, squid, sams.
    Рекодмендую когда получите сервер, поднимать на нем виртуализацию. Все пробовать поднимать на виртуалке. Ее бекапить, чтобы если что установилось\скомпилировалось неудачно можно было откатиться. Для шлюза с прокси она много места не займет.
    Ответ написан
    1 комментарий
  • В чем отличие cms от framework?

    CMS - это "полуфабрикат" сайта, т.е. немного настроил и готов сайт.
    Framework - это надстройка над языком программирования, т.е. более "крутой" инструмент для создания продукта.
    Ответ написан
    2 комментария
  • Как сделать систему купонов и бонусов для интернет-магазина?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    То что вы описываете непосредственно со структурой базы не связано. Во всяком случае бонусы могут быть просто полем в документе пользователя. Суть в том, что вам нужен метод оплаты через бонусы, по сути.

    Для купонов - так же можно помечать что когда было использовано. Но разруливать всеравно придется в коде.
    Ответ написан
    Комментировать
  • Какой принцип использовать для хранения данных в MongoDB?

    Рекомендую почитать "50 Tips and Tricks for MongoDB". Текста не много, а информации полно. Здесь в ответах немного напутали - то, что у вас под 1ым пунктом - это денормализованная коллекция. Плюсы в том, что за один запрос имеете всю информацию по обьекту, ну а минусы соответственно, что сложно применять правки. А 2ой пункт, это уже нормализованная - и тут всё наоборот. Но главное, это грамотно балансировать между ними, а не выбирать одну из сторон. Структура очень зависит не только от структуры данных, но и того - как мы используем эти данные (какие выборки делать будем) и на сколько важна их актуальность. Пару советов из разных сторон:
    - если идете по первому пути - то можете хранить также все подсущности в отдельных коллекциях. Изменяя подсущность, изменяете её в своей коллекции, и не бойтесь писать скрипты для нормализации, которые по крону будут актуализировать основную коллекцию.
    - а если по второму, то храните не только `_id` подсущностей, но также часть обьекта, которая всегда будет нужна, что бы минимизировать запросы.
    Ответ написан
    Комментировать
  • Какой принцип использовать для хранения данных в MongoDB?

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

    Прелесть schemaless именно в отсутствии схемы. То есть вы можете разным сущностям придать разные атрибуты, при этом держать все в одной коллекции и индексировать все эти атрибуты. Если же структура предполагается более регулярной, если схема будет присутствовать - то стоит обратиться к хранилищам со схемой.
    Ответ написан
    6 комментариев
  • Какой принцип использовать для хранения данных в MongoDB?

    @lega
    Зависит от использования, например если отзывы будут выводится на странице книги и больше с ними ничего не будет происходить, то их удобно сделать вложенными, + экономия на запросах, одним запросом будет доставаться книга и отзывы.
    А вот авторов лучше (можно) в отдельную коллекцию, т.к. их данные будут изменятся (имя, фотка, описание, теги?), Хотя если эти изменения очень редкие или вовсе нет, то можно сделать вложенными, при этом будет больший расход диска, но экономия на запросах.
    Ответ написан
    1 комментарий
  • Как реализовать модульную систему на node.js?

    rumkin
    @rumkin
    В nodejs нет mvc в реализации других языков, точнее он есть, но выглядит иначе. А MVC-фреймворки не пользуются особой популярностью, хотя попытки реализовать есть: sailsjs.org и derbyjs.com

    Советую изучить принцип работы connect или express, где вы на запрос, как на нитку, нанизываете обработчики, первый сработавший обработчик должен: отдать результат и прекратить выполнение, либо передать выполнение следующему обработчику, возможно, дополнив объект запроса новыми свойствами. Связывание элементов системы происходит разными способами, но обычно это делается через расширение объекта запроса или ответа. Это позволяет вам инкапсулировать модули, делая их менее зависимыми от системы в целом.
    Ответ написан
    Комментировать
  • Что делать, если Google Play забанил разработчика?

    TonyCode
    @TonyCode
    Похоже, что ситуация сильно тяжелая и выхода всего два:

    1. Упорно добиваться контакта с саппортом, посыпать голову пеплом и вести переговоры о разруливании ситуации

    2. Начать всё с нуля и больше не "шалить" - склонировать свои приложения (сменить название/оформление/package - всё, так чтобы было вообще не узнать) и выложить из-под другого человека, чутко реагируя на каждое предупреждение...

    Сочувствую...

    P.S. А подумать про выход на другие маркеты в дополнение к GooglePlay всё же стоит!
    Ответ написан
    4 комментария
  • Как решить ошибку с ListView и AsyncTask в Android?

    TonyCode
    @TonyCode
    Цепляемся за следующую строку Logcat-а:

    "Make sure the content of your adapter is not modified from a background thread, but only from the UI thread."


    Далее видим в AsyncTask следующее:

    @Override
        protected Void doInBackground(Void... params) {
                LINK = "here is link for json";
                obj = Helpers.getJson(LINK);
                if (obj != null) {
                    Helpers.refreshListView(obj, tempList);
                }
            return null;
        }


    Ошибка:

    Helpers.refreshListView(obj, tempList); вызывается в методе doInBackground() которая выполняется в background thread!

    Решение:

    Вынести вызов refreshListView() в метод onProgressUpdate() AsyncTask-а (который уже выполняется на UI Thread!):

    protected Void doInBackground(Void... params) {
        // ...
        publishProgress(new MyProgress(obj, tempList));
        // ...
    }
    
    protected void onProgressUpdate(MyProgress... progress) {
        if (progress.size() > 0) {
            Helpers.refreshListView(progress[0].getObj(), progress[0].getTempList());
        }
    }


    ---
    Upd: Подробнее - т.к. в UIThread надо передавать и obj и tempList - то для них нужно сделать класс-wrapper, например так - (каждый класс в своём файле, естественно)

    public class LoadWall extends AsyncTask<Void, MyProgress, Void> {
        // ...
        @Override
        protected Void doInBackground(Void... params) {
            // ...
            publishProgress(new MyProgress(obj, tempList));
            // ...
        }
    
        @Override
        protected void onProgressUpdate(MyProgress... progress) {
            if (progress.size() > 0) {
                Helpers.refreshListView(progress[0].getObj(), progress[0].getTempList());
            }
        }
        // ...
    }
    
    /**
     * Используется для передачи прогресса в UI-Thread
     */
    public class MyProgress {
    
        private final Object obj;
        private final ArrayList<LinkedHashMap<String, String>> tempList;
    
        public MyProgress(Object obj, ArrayList<LinkedHashMap<String, String>> tempList) {
            this.obj      = obj;
            this.tempList = tempList;
        }
    
        public Object getObj() {
            return obj;
        }
    
        public ArrayList<LinkedHashMap<String, String>> getTempList() {
            return tempList;
        }
    }
    Ответ написан
    2 комментария
  • Хочу изучить Node.js

    Santacruz
    @Santacruz
    Cryptocurrencies + Trading
    Тяжело… будешь привыкать к асинхронности… главное не сдаваться и пройти инкубационный период — когда становятся понятны основные приемы…

    bonsaiden.github.com/JavaScript-Garden/
    caolanmcmahon.com/posts/nodejs_style_and_structure/
    Ответ написан
    Комментировать