alexeykostylev: (Default)
Делали тим билдинг. Пошли на картинг. Я лет 10 назад в Москве был раз на картинге и все. Тут тоже по старой памяти думаю педаль в пол, взгляд вперед и не видеть препятсвий. Как в NFS. А тут оказывается в борта на врезаться, с другими машинами контакта избегать, извините подвиньтесь. Ну что такое. А как же адреналин и все такое...
Машинки были электрические, бегали шустро, зато выхлопов не было. Первые 20 кругов на тормоз вообще не давил, на поворотах шины визжали, другие машины расталкивал. Дали 2 предупреждения и под конец въехал в борт и сломал колесо. Выставили счет на $30. У них в контракте это прописано. Вот ведь хитрые жопы.

Пока смотрел как ездят другие команды, заметил что тормоз вещь полезная и следующие 20 кругов уже проехал образцво не задев борта.
В итоге заняли 3 место.

alexeykostylev: (Default)
Посидел тут попрактиковался в AngularJS - сделал тул для получения public ссылок на фотки с гугля: http://photofetcher.azurewebsites.net/

Логина не требует, по email вычитывает паблик альбомы и копирует ссылки на фотки в клипбоард. Функцинально аналог picasa2html. После экспорта сохраняет логин, разрешеие и шаблон в local storage. Надо будет докрутить шаблон и возможность ручной сортировки фоток.

Вообще замаялся с этим гуглом. Чтобы сделать паблик альбом надо идти в google+ и делать коллекцию или пытаться сделать альбом из google photos public из другого приложения: http://www.svenbluege.de/picasa/v1.1/#

Релиз

Oct. 5th, 2016 02:33 pm
alexeykostylev: (Default)

Недавно тут наш релиз в хералде освещали: http://m.nzherald.co.nz/business/news/article.cfm?c_id=3&objectid=11721338

:)

alexeykostylev: (Default)
Приходит как-то письмо от рекрутера с линкедина - интересуется как дела. Ну дело в последнее время обычное, контракт завершается. Отвечаю, что все ОК, бла бла. Потом проходит еще письмо от того же адреса, типа у нас в Хайфе есть клевые вакансии. Начинаю подозревать неладное, тем более что тема была на иврите, но внимания поначалу особого не придал. СМотрю на тело сообщения - иврит, это мне гугл сам перевел. Так и общались, она мне на иврите, гугл переводит и я отвечаю на анг. Потом выяснилось что как-то я в их базу попал и она мне написала на автомате. А может рекрутер молодая слишком, из линкедина всех по тегам вытащила без разбора.  Пожелали друг другу хороших выходных и распрощались.
alexeykostylev: (Default)
Объява сделалa мой день вчера: Developer - classic ASP

как вам такая вакансия?

- A number of years of development experience

- Excellent knowledge of classic ASP

- Strong knowledge of Microsoft SQL Server

- Working knowledge of HTML, CSS, Javascript and Ajax


Вот блин, есть же динозавры. Они ведь даже же не мигририуют с этого, а пишут! Я там понимаю видел вакансии нa Дельфи, как бекенд или старые виндосовские UI приложения еще пойдет, но веб так делать это просто круто.
alexeykostylev: (Default)

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

alexeykostylev: (Default)

Тут как-то подумал что я наследование и виртуальные методы почти не использую в работе. Ну там завести ControllerBase или RepositoryBase это понятное дело, а вот чтобы построить какують цепочку наследованных классов это нет. Ну там extensions как хелперы и все. Структура плоская и основная проблема расставить правильные зависимости через интерфейсы и настроить фабрику классов для создания об'ектов для этих интерфейсов. Помню лет 10 назад сидел думал какие классы будут, какие методы сделать  виртуальными.

А кстати вспомнил, месяц назад выписывал базовый абстрактный класс с парой виртуальных методов :)

alexeykostylev: (Default)
Толи я такой придирчивый, толи везет мне как-то особенно, но на новой работе опять код скажем так специфичный временами. Прошедший уже через 2-х девелоперов.

Вот что делает этот репозиторий для EntityFramework'a?

Правильно, тащит все записи на клиента, сортирует и берет первую.

            var costLatest =
                UnitOfWork.CostRepository.Get(x => x.ProjectId == projectId)
                    .OrderByDescending(x => x.AsAtDate)
                    .FirstOrDefault();



Пара легких движений превращает это в следующее:

var data = AcuiteDB.Costs.Where(x => x.ProjectId == projectId).OrderByDescending(o => o.AsAtDate).Take(1);



Пугает что вроде мелочь, но всюду... Поискал поиском по solution - нашел 5 использований этого куска.

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

Ну или вот:
Есть набор записей, по нему бегают, лезут в зависимую сущность и берут поле, которое суммируют.

var divider = latestProjectRatings
  .Where(e => projectIds.Contains(e.ProjectId))
  .Select(s=>s.Project.HSEWeighting)
  .Sum();



На деле это выливается в серию запросов к БД, по каждой записи, поскольку используется lazy loading. Ну и при большом наборе - Х запросов, пользователь сидит курит.

Про кучу css от разных версий уж молчу.

Ну это мелочи и не мои проблемы :) Мне деньги платят что бы я их решал.

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

ps. Наверно надо пояснить что метод GET в репозитории делает вызов ToList() перед возвратом, соотв. запрос на этом уходит на сервер и потом вся остальная логика идет отдельными запросами.
alexeykostylev: (Default)
Не проходит и месяца чтобы в линкедин не постучался очередной индус с добавлением в контакты. У них спорт такой чтоли или измором берут? Ну я понимаю рекрутеры там, а девелоперы, зачем? Я туда добавляю только рекрутеров и коллег с друзьями. Может я чего-то упускаю в этом линкедине, может тоже надо всех туда добавлять и придет щастие?
alexeykostylev: (Default)
Начал тут копаться в системе, нашел пару перлов :)

Код рабочий, но странный.
private static void CreateInvoiceFromDTO(ref InvoiceDTO from, ref Invoice to, UserDTO user)
{           
   to.Id = from.Id;
   to.LegalAidCaseId = from.LegalAidCaseId;
   to.StatusId = from.StatusId;
   to.ReceivedDate = from.ReceivedDate;
   ....
}


Этот чувак кстати уже сеньором работал на момент написания этого кода.

Еще видел вариации этого маппера когда to возвращают как method result.

и самый классный:
А вот это реальный косяк. Правда может работает из-за того что в Dispose() наверно еще один косяк :) Хотя может и не работает..

private IProviderServiceController CreateNewProviderServiceController()
{
   using (var controller = new ProviderServiceController())
   {
        return controller;
   }
}
alexeykostylev: (Default)
Куски типа этих попадаются очень часто в текущем проекте:
Read more... )

Сначала я хотел написать что-то типа - Храни нас от проектов, сделанных манагерами и аналитиками.

А потом подумал, надо же восхищаться этими бесстрашными рыцарями без страха и упрека, на полном скаку врывающимися в новый проект, кодящими направо и налево. При этом они и себе репутацию зарабатывают как problem solver and result oriented и вдобавок обеспечивают работой на годы вперед разного рода ИТ-ую братию.

А манагер, автор непосредственно этого кода, еще и пост закатал на местном ресурсе как не надо слишком заморачиваться на качестве продукта, которое пользователи все равно не оценят.

Оно конечно идея разумная, но я все-таки за то чтобы манагеры управляли, аналитики занимались аналитикой, а програмеры кодили.
alexeykostylev: (Default)
Интересное дело, я заметил что стал есть чуть ли не в полтора раза больше как нашел работу. Стресс переезда, новой работы, да и работать собственно приходится по полной. Не зря ученые говорят что в природе иметь мозг дорогое удовольствие.
alexeykostylev: (Default)
Вот думаю тут насчет требований для C# web developer'ов.

Вот типические требования:

- ASP.Net and MVC
- HTML, CSS, JQuery and JavaScript.
- SQL

С первым пунктом вопросов нет. Но зачем мешать HTML, CSS с Sql? Может я чего и не понимаю, поскольку практически не учавствовал в разработке серьезных сайтов, но это же 2 совершенно разных уровня. Я понимаю 10-15 лет назад когда запросы часто пропысывались прямо в коде страницы, но сейчас же все используют SOA, separation of Concern, etc. Все же стараются делать data access layer, business logic layer и затем собственно presentation layer. Не могу представить что в большом проекте один и тот же чел будет развешивать стили и писать запросы ну или хотя бы сервисы для данных. Представление конечно надо иметь, но так чтобы вот прямо требовать х лет опыта с ангулар и отличный Sql... Зачем?

Собеседовался как-то на 2 позиции где нужен был веб девелопер. По первой сказали что они вообще не занимаются front-end, а во 2-й что back-end дев занимает 75% всего времени и я подозреваю что такая фигня в большинстве таких позиций.

Такое подозрение что требоования просто не грамотно пишут что-ли, а агенства еще и перестраховываются и в итоге если нет х лет с ХТМЛ то агенты просто меня отсеивают или предлагают на начальные позиции, несмотря на приличные знания Sql и сервисов и не очень приличные по HTML с js (т.е я не могу сказать что этим конкретно занимался).

Может надо просто врать больше... Я смотрю индусы тока так языком трещат...

edited.

GIT

Oct. 23rd, 2014 09:08 am
alexeykostylev: (Default)
Читаю вот доки по гиту и не понимаю ради чего надо его использовать в офисе? Ну я там понимаю когда по удаленке работаешь со своего ноута при непостоянном соединениии, но в офисе.. Я работал с visual source safe, SVN, TFS и никогда не требовалось время на изучение. Все было понятно. А сейчас сунулся - ничего не понятно. Спросил как можно обновить или откатить (не помню точно) только один файл - выдали целый список заклинаний. Раньше я это мог сделать сразу сам и было интуитивно понятно. Такое чувство что git какая-то вещь сама для себя.
alexeykostylev: (Default)
3-й день ма мовом месте. Наконец получил свое рабочее место. 2 дня смотрел через плечо на монитор, обсуждал систему в целом, гулял по окрестностям. На работе как всегда никто особо не парится. В 10 планерка, потом команда дружно идет пить кофе минут на 20. После обеда кофе повторяется. Впрочем к такому уже привык. Я так понял меня взяли на место одного программиста который ушел в другую контору после 7-ми лет контрактной работы тут. Это радует, т.к. теоретически мне тоже может перепасть постоянное продление контракта :)

Напротив меня сидит парень из Шотландии. Когда он впервые заговорил я думал что у него с речью что-то не то. У него как раз брекеты на зубах, подумал что брекеты ему мешают. Потом он сказал что из Шотландии. Тогда все стало ясно. Прикольно его слушать. Как будто смотришь Burnistoun

СтАндарт вЕРРРшин of Sql Server.. Такая забавная еще интонация :)
alexeykostylev: (Default)
Наши новости.

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

В то же время супруга ходит на английский и вчера нас по нашей просьбе перевели в другую группу, поскольку в старой обучение было никакое. Если кто ходил в DynaSpeak, помнит там такой старый дядечка, который учить не умеет.

Мы с дочкой съездили в Велик, проветрились и сделали Виктору гражданство.

Мне предложили новый контракт (ура-ура!! - переживал что будет большой перерыв), в след. понедельник выхожу. Как раз есть неделя чтобы отдохнуть и привести в порядок всякие домашние дела. Теперь буду работать в сити - в Tower Insurance. Предыдущий контракт закрыл образцово - все пункты закрыл в среду, в четверг небольшое финальное тестирование и закрытие багов в баг трекере. Пятница final look, собеседование на новый контракт и гуд бай.

Будни

Aug. 3rd, 2014 11:27 am
alexeykostylev: (Default)
Вкратце что у нас происходит, а то некогда делать записи.

Настюшка сходила в русскую школу в Meadowood community centre, понравилось. Теперь видимо будем по субботам ходить учиться читать\писать, так же там есть урок рисования.

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

Лена пошла ну курсы английского по вечерам в сити. К 5-ти подъезжает на машине с детьми к офису и пересаживается на автобус в центр, в 10 вечера обратно. Говорит что пока учат плохо, но по крайней мере хорошо отвлекает от рутины.

С работой пока у меня все хорошо. Вперые за много лет меня реально прет кодить :) Реально как прихожу в 8 так и до 5-ти работаю. У меня есть конкретная задача, за которую мне платят конкретные деньги. Однако интернет сильно порезан, никаких форумов и ЖЖ. Можно почитать Herald онлайн и RSDN, когда надо отвлечься. Раньше я дома делал фотки, а на работе делал записи, теперь так не выйдет.
alexeykostylev: (Default)
Как некоторые уже заметили, в линкедине у меня обновился статус про работу. Работу я нашел. Работаю я теперь по контракту на Sovereign Insurance, что на Smales Farm. Первоначальный контракт на 3 месяца, но у меня такое чувство что 3-х месяцев не хватит. Работа состоит в переписывании пары старых приложений с С++ MFC на C#.

Я на самом деле давно хотел попробовать контрактную работу. Еще когда сдавал IELTS в Москве, на спикинге говорил что хочу работать консультантом - проекты постоянно меняются, постоянно новые люди. Сейчас меня интересует больше материальная сторона вопроса, но постоянное наличие новых проектов тоже добавляет фана. А тут как раз очень удобная ситуация случилась - не было условия что я должен был отработать 4 недели до ухода.

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

Сегодня вот был первый день. Ну работа как работа. Никто за мной не контролирует чтобы я перерывы на чай/кофе записывал как нерабочее время. Как договорились на $хх в час помноженное на 8 часов в день, так и будет оплачиваться.

В принципе такой подход мне больше по душе - продать свои умения по нормальной цене, а не делать зачастую тоже самое, но за меньшие деньги и еще иногда к тому же париться с таймшитами. Здесь как потопаешь так и полопаешь.
alexeykostylev: (Default)
Вчера в офисе объявили всеобщий сбор.

Ну сбор так сбор. В 2 часа, человек 30 встали в кружок и начали слушать нашего директора.

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

Короче ребята, нашу фирму решили закрыть. Родительская фирма не может спонсировать наш проект и платить по поллимона каждый месяц. Ваш последний день будет в следующую пятницу. Челюсть у народа сразу бац, тишина стоит. У директора стал голос дрожать, отхлебнул воды, сказал что какая классная была команда, как жаль и все такое. Но денег у фирмы нет и сделать он ничего не сможет. Нет даже денег на выходное пособие, но совладелец из своих средств оплачивает 4 недели пособия и отпускные у кого остались.
Уволили нашу команду, команду во Вьетнаме, всего около 80-ти человек. Предложили какое-то количество мест в головной конторе, но совсем немного и работа на любителя, так сказать.

Вот так...

А ведь еще пару месяцев назад набирали людей, наш тимлид пришел месяца полтора назад и еще куча народа за последние 3-4 месяца. Были планы к концу года набрать 9 команд, сделать предварительный релиз и тут опа, все в сад. Пару часов назад планировали очередной спринт, задач 20 поставили в очередь и тут вся наша работа идет лесом.

Народ собрался всей толпой и пошел пить пиво в бар.

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

Не было печали, как говорится...

Profile

alexeykostylev: (Default)
alexeykostylev

August 2017

S M T W T F S
   1234 5
6789101112
13141516171819
20212223242526
2728293031  

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 22nd, 2017 08:16 am
Powered by Dreamwidth Studios