Практика перехода на аутсорсинг – взгляд изнутри и снаружи




Принцип обмена данными из 1С с сайтом (на MySQL) и выдачи (публикации) этих данных по запросу.
PHP-Скрипт автоматической загрузки данных из файла данных в формате CSV в базу данных сайта работающего на WordPress.

В продолжение моей темы: 1С:Альфа-Авто Автосалон Автосервис: обмен с сайтом.
С помощью данного скрипта можно загружать в автоматическом режиме, по расписанию, данные сервисных книжек (ремонтов авто) из 1С:Альфа-Авто Автосалон Автосервис.
Также можно загружать данные в ручном режиме: для этого делается скрытая страница, где размещается специальная кнопка.
Комментарии размещенные внутри скрипта разъяснят логику и порядок действия.
Комментарии с "/////    echo" использовались для отладки.
Дополнительно создана таблица для журналирования результатов загрузки данных.
Скрипт включает в себя защиту от SQL инъекций (думаю безопасность соблюдена в полной мере).
В кратце:
1. Пишется скрипт, который запускает этот.
2. Создается регламентное задание в WordPress, по которому запускается скрипт из п.1. 
3. Этот скрипт осуществляет проверку на существование файла обмена в папке.
4. Если данные не новые, загрузка не производится.
5. Если данные новые, очищается таблица сервисных книжек.
6. Загружаются новые данные.

Собственно сам скрипт:

<?php // Полная загрузка сервисных книжек, создан 2024-01-05 12:44:55

global $wpdb2;
global $failure;
global $file_hist;

/////  echo '<H2><b>Старт загрузки</b></H2><br>';

$failure=FALSE;
//подключаемся к базе
$wpdb2 = include_once 'connection.php'; ; // подключаемся к MySQL
// если не удалось подключиться, и нужно оборвать PHP с сообщением об этой ошибке
if (!empty($wpdb2->error))
{
/////   echo '<H2><b>Ошибка подключения к БД, завершение.</b></H2><br>';
$failure=TRUE;
wp_die( $wpdb2->error );
}

$m_size_file=0;
$m_mtime_file=0;
$m_comment='';
/////проверка существования файлов выгрузки из 1С
////файл выгрузки сервисных книжек
$file_hist = ABSPATH.'/_1c_alfa_exchange/AA_hist.csv';
if (!file_exists($file_hist))
{
/////   echo '<H2><b>Файл обмена с сервисными книжками не существует.</b></H2><br>';
$m_comment='Файл обмена с сервисными книжками не существует';
$failure=TRUE;
}

/////инициируем таблицу лога
/////если не существует файла то возврат и ничего не делаем
if ($failure){
///включает защиту от SQL инъекций и данные можно передавать как есть, например: $_GET['foo']
/////   echo '<H2><b>Попытка вставить запись в лог таблицу</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>$m_mtime_file,'last_size_upload'=>$m_size_file,'comment'=>$m_comment));
wp_die();
/////    echo '<H2><b>Возврат в начало.</b></H2><br>';
return $failure;
}
/////проверка лога загрузки, что бы не загружать тоже самое
$masiv_data_file=stat($file_hist);   ////передаем в массив свойство файла
$m_size_file=$masiv_data_file[7];    ////получаем размер файла
$m_mtime_file=$masiv_data_file[9];   ////получаем дату модификации файла
////создаем запрос на получение последней удачной загрузки
////выбираем по штампу времени создания (редактирования) файла загрузки AA_hist.csv, $m_mtime_file

/////   echo '<H2><b>Размер файла: '.$m_size_file.'</b></H2><br>';
/////   echo '<H2><b>Штамп времени файла: '.$m_mtime_file.'</b></H2><br>';
/////   echo '<H2><b>Формирование запроса на выборку из лога</b></H2><br>';
////препарируем запрос
$text_zaprosa=$wpdb2->prepare("SELECT * FROM `vin_logs` WHERE `last_mtime_upload` = %s", $m_mtime_file);
$results=$wpdb2->get_results($text_zaprosa);

if ($results)
{   foreach ( $results as $r)
{
////если штамп времени и размер файла совпадают, возврат
if (($r->last_mtime_upload==$m_mtime_file) && ($r->last_size_upload==$m_size_file))
{////echo '<H2><b>Возврат в начало, т.к. найдена запись в логе.</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>$m_mtime_file,'last_size_upload'=>$m_size_file,'comment'=>'Загрузка отменена, новых данных нет, т.к. найдена запись в логе.'));
wp_die();
return $failure;
}
}
}
////если данные новые, пишем в лог запись о начале загрузки
/////echo '<H2><b>Попытка вставить запись о начале загрузки в лог таблицу</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>0, 'last_size_upload'=>$m_size_file, 'comment'=>'Начало загрузки'));

////очищаем таблицу
$clear_tbl_zap=$wpdb2->prepare("TRUNCATE TABLE %s", 'vin_history');
$clear_tbl_zap_repl=str_replace("'","`",$clear_tbl_zap);
$results=$wpdb2->query($clear_tbl_zap_repl);
/////   echo '<H2><b>Очистка таблицы сервисных книжек</b></H2><br>';
if (empty($results))
{
/////   echo '<H2><b>Ошибка очистки таблицы книжек, завершение.</b></H2><br>';
//// если очистка не удалась, возврат
$failure=TRUE;
wp_die();
return $failure;
}

////загружаем данные
$table='vin_history';         // Имя таблицы для импорта
//$file_hist Имя CSV файла, откуда берется информация     // (путь от корня web-сервера)
$delim=';';          // Разделитель полей в CSV файле
$enclosed='"';      // Кавычки для содержимого полей
$escaped='\

41 Comments

  1. yukon
    Вот результаты, которых можно достичь:

    Оплачиваемая загрузка – от 178 часов в месяц. Если специалист готов работать напряженно, то – не проблема, 200-240 часов в месяц (это шестидневка, 10 часов в сутки).

    Результаты? 10 часов в сутки шесть дней в неделе это просто предел мечтаний работодателя, а не работника. Ловкий ход — работника на аутсорс, теперь ТК для на работника не распространяется, и WELCOME 12 часовой (это я на пятидневку пересчитал) рабочий день. Отличная схема!

    Нормальный результат это 100-120 часов оплачиваемого времени на аутсорсе, которые обеспечивают доход как 160+ часов на трудовом договоре. Остальное пототогонка.

    Reply
  2. apatyukov

    (1) yukon, на аутсорсе как бы и цены другие 🙂

    Есть кстати примеры полностью белых контор , в которых сотрудники перерегестрировались на ИП и получили прибавку в виде разницы по налогам 🙂

    А принятие рисков это личное дело каждого,

    можно риски принимать , понимать что они есть и работать. Это как волков бояться в лес не ходить 🙂

    Reply
  3. apatyukov

    (1) yukon, Кстати специалист может быть и фрилансером, вы этот вариант не рассматривали?

    Reply
  4. yukon

    (2)

    Есть кстати примеры полностью белых контор , в которых сотрудники перерегестрировались на ИП и получили прибавку в виде разницы по налогам

    Это радость будет недолгой — до первого серьезного больничного где-то на полгодика. К тому же, уверен, что математически эта прибавка меньше тех самых налогов. Т.е. работодатель в результате:

    1. Снижает ФОТ

    2. Снимает с себя все социальные гарантии — отпуска, больничные, страховые случаи, режим работы, обеспечение условий труда, медосмотры и прочее.

    3. Получает возможность интенсификации использования имеющихся трудовых ресурсов — при 160 нормативных, 240 реальных часов это, на минутку, в полтора раза больше. Т.е. вместо трех работников, можно использовать двух.

    4. Уволить работника теперь просто — заказное о расторжении договора, и все.

    Минус, пожалуй только один — налоговая о таких схемах знает, и может придраться, но это доп. расходы на статью «денежное содержание представителей надзорных органов».

    У работника же один плюс — денег платят больше. И один полуплюс — «гибкий» режим рабочего времени, но организовать его можно и в рамках трудового договора, было бы желание.

    И, еще, хм, это не «белая» контора.

    А принятие рисков это личное дело каждого,

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

    Reply
  5. TODD22
    Ну и самый главный приятный бонус для специалистов: отпуск можно планировать в любое время года, даже во время сдачи баланса, НДС и налога на прибыль. Вся ваша загрузка – плановая. Соответственно, вы распланировали три месяца, на четвертый месяц вы ничего не планируете, у вас отпуск. И говорите, что дальше у меня загрузка будет через две недели.

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

    Проверено на себе… ни одного клиента нельзя оставить на время сдачи отчётности как не планируй. Они нанимают что бы решали их проблемы. И проблемы у них в момент сдачи отчётности будут в любом случае. Есть только один вариант это сесть с гл.бухом и перед отпуском «вылизать» всю базу и разобраться со всем и проблемами. И то найдутся вопросы и будут звонить. Если предприятие чуть больше чем 3 ларька с шаурмой в период отчётности вопросов навалом.

    Reply
  6. apatyukov

    (5) TODD22,


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

    Проверено на себе… ни одного клиента нельзя оставить на время сдачи отчётности как не планируй. Они нанимают что бы решали их проблемы. И проблемы у них в момент сдачи отчётности будут в любом случае. Есть только один вариант это сесть с гл.бухом и перед отпуском «вылизать» всю базу и разобраться со всем и проблемами. И то найдутся вопросы и будут звонить. Если предприятие чуть больше чем 3 ларька с шаурмой в период отчётности вопросов навалом.

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

    А Инфостарт 2014 я катался как раз в период налога на прибыль. Кстати с убеждением, что всем конторам требуется специалист во время сдачи отчетности, можно поработать 🙂

    Reply
  7. TODD22

    (6)

    Кстати с убеждением, что всем конторам требуется специалист во время сдачи отчетности, можно поработать 🙂

    Что значит «можно поработать с убеждением» ?

    Это не убеждение а мои клиенты. Вот ещё ни разу не было такого что бы в отчётность не звонили и не приходилось разбираться с какими то вопросами.

    А особенно понял это когда заболел и 3 месяца был на больничном. И чуть все клиенты не разбежались…

    Reply
  8. PAVI

    (7) TODD22,

    Я думаю, что это высказывание автора

    Кстати с убеждением, что всем конторам требуется специалист во время сдачи отчетности, можно поработать 🙂

    говорит о том, что он (автор) видит дополнительный повод контакта с потенциальными клиентами

    Reply
  9. Golikov
    Первая – это отсутствие квалификации в найме специалистов. По моему опыту, порядка 80-90% компаний, у которых нет ИТ-отдела, не могут оценить квалификацию того, с кем они разговаривают.

    Отсутствие квалификации в найме специалистов точно так же мешает определить уровень квалификации франча.

    Первое, что мы делаем – это проводим аудит состояния информационных систем. Если у меня нет аудита, я не знаю, что может быть в компании. Если это бухгалтерия – зайдите, посмотрите, что там в оборотно-сальдовой ведомости, есть ли отрицательные остатки на 19, 41, 44, любых других счетах. Вы поймете тогда, что у вас очень высокая степень риска работать с бухгалтерией, потому что здесь надо отстраивать учет.

    Также необходимо провести аудит информационных потоков. Каким образом? Я это делаю элементарно, задаю пару-тройку вопросов бухгалтеру: «к НДС нормально подготовились?» – «Да нет, поставщики нас тревожат, документы не предоставляют, все плохо». – «А кроме предоставления документов, что еще плохо?»

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

    Это работает только на мелких конторах. В нормальных конторах для аудита необходимо сначала ознакомится с бизнес процессами в компании, которые очень редко бывают формализированными.

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

    Reply
  10. Golikov
    Оплачиваемая загрузка – от 178 часов в месяц. Если специалист готов работать напряженно, то – не проблема, 200-240 часов в месяц (это шестидневка, 10 часов в сутки).

    Работать с загрузкой свыше 100-120 часов в месяц нереально. Ибо надо еще время на обучение и на прочее прочее прочее.

    Reply
  11. TODD22
    В нормальных конторах для аудита необходимо сначала ознакомится с бизнес процессами в компании, которые очень редко бывают формализированными.

    Даже с формализованными процессами не всё гладко и просто.

    Сейчас работаю в небольшой компании. Тут что бы понять как устроена работа, набегами мало ходить… тут вариться надо. Я уже 3 месяца варюсь. и только сейчас начинает приходить понимание что и как нужно делать.

    (8)

    говорит о том, что он (автор) видит дополнительный повод контакта с потенциальными клиентами

    Да речь про какие то мои убеждения а не про дополнительные контакты…. Ну да ладно…

    Reply
  12. Golikov
    Сейчас работаю в небольшой компании. Тут что бы понять как устроена работа, набегами мало ходить… тут вариться надо. Я уже 3 месяца варюсь. и только сейчас начинает приходить понимание что и как нужно делать.

    Вот вот. Соответственно стоимость нормального аудита будет просто запредельной. Был пример в практике, когда франчайзи провели аудит УПП ,переписанной вдоль и поперек, за 20 часов и выставили в качестве рекомендации обновление релиза.

    Reply
  13. wolfsoft

    Ох уж эти сказки, ох уж эти сказочники (с) м/ф

    Reply
  14. lvictor58

    (5) Грош цена такому бухгалтеру, которому для сдачи отчетности необходимо, что бы одноэсник у него под боком постоянно сидел. Я вообще считаю, что нельзя подсаживать контору «на крючок» так, что бы стать там незаменимым. Особенно если вы не штатный программер, а фрилансер. Сделал дело — и иди дальше к новым свершениям. Иначе они вас и на толчке телефонными звонками донимать будут. И от такого сотрудничества в итоге будет больше нервотрепки, чем пользы (и денег!).

    Reply
  15. DonAlPatino

    (14) Но к сожалению это сплошь и рядом.Более того — каждый второй из них отойдя от сдачи очередной отчетности утверждает, что может все сам и «одноэсник» ему даром не нужен. До следующей сдачи отчетности. 🙂

    Reply
  16. TODD22

    (14) lvictor58,

    Грош цена такому бухгалтеру, которому для сдачи отчетности необходимо, что бы одноэсник у него под боком постоянно сидел.

    Не меньше вашего коллега возмущён… что за бухгалтера пошли… Сами не могут обновить переписанную УПП на 4 релиза, закрыть в УПП месяц то же у них не получается. Не могут разобраться с зацикливанием затрат и тд… И вообще какие то некомпетентные пошли… всё же на машиностроительный завод пришли работать а не беляшами торговать…

    Reply
  17. awk

    (16) TODD22, Бухгалтеру хватит и ручки с тетрадкой, а «бухгалтеру» и 10 программистов не помогут.

    Reply
  18. TODD22

    (17) awk, У вас вся бухгалтерия с тетрадкой и ручкой учёт ведёт? А вместо ПК у всех счёты?

    Reply
  19. Lapitskiy

    (10) Golikov, это точно, надо учиться новому, +бесплатные переговоры и т.п. потери времени.

    Reply
  20. Lapitskiy

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

    А если, выражаясь западными клише, «Продавец ОК» — то и продать можно всё что угодно.

    Reply
  21. apatyukov

    (20) Lapitskiy, По факту до громкого звания Продавец мне пахать и пахать, благо есть у кого учиться.

    Reply
  22. apatyukov

    (16) TODD22,

    Сами не могут обновить переписанную УПП на 4 релиза, закрыть в УПП месяц то же у них не получается. Не могут разобраться с зацикливанием затрат и тд… И вообще какие то некомпетентные пошли… всё же на машиностроительный завод пришли работать а не беляшами торговать..

    То что клиент на вас жестко завязан вас радует или печалит?

    Reply
  23. apatyukov

    (12) Golikov, Смысл делать полный аудит. К врачу когда приходишь тоже сразу требуешь МРТ всего тела?

    Reply
  24. apatyukov

    (10) Golikov,

    Работать с загрузкой свыше 100-120 часов в месяц нереально. Ибо надо еще время на обучение и на прочее прочее прочее.

    А на что конкретно прочее, прочее время надо?

    Reply
  25. apatyukov

    (7) TODD22,

    Что значит «можно поработать с убеждением» ?

    Это не убеждение а мои клиенты. Вот ещё ни разу не было такого что бы в отчётность не звонили и не приходилось разбираться с какими то вопросами.

    А особенно понял это когда заболел и 3 месяца был на больничном. И чуть все клиенты не разбежались…

    А что вы делаете такого что набираете только таких клиентов?

    Reply
  26. TODD22

    (22) Клиент завязан не на меня лично, а на программиста 1С. Завязан был не мной. И у клиента есть потребности в постоянных доработках. Потому что не шаурмой торгуют в 2х привокзальных киосках. И работы у них на пару лет… при этом у них есть штатный 1сник, я как приходящий и ещё франч. У всех свой круг обязанностей.

    (25)

    А что вы делаете такого что набираете только таких клиентов?

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

    Reply
  27. Golikov

    (24)

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

    Во вторых необходимо время на обучение на ознакомление с новым, на обсуждение различных вопросов.

    Reply
  28. Golikov

    (23)

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

    Reply
  29. apatyukov

    (27) Golikov, та ки не ответили на мой вопрос конкретно на что еще требуется время?

    Если на обучение, то какое?

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

    Во вторых необходимо время на обучение на ознакомление с новым, на обсуждение различных вопросов.

    Обсуждение различных вопросов обычно оплачивается. Если программировать 8 часов сложно, берите задачи по консультированию, их всегда тоже предостаточно.

    Reply
  30. apatyukov

    (26) TODD22, у вас постоянно звучит «Потому что не шаурмой торгуют в 2х привокзальных киосках». Pа что вы так не любите ипшников, у них предостаточно интересных задач? Причем они не завязаны на НДС и НП. соответственно квартальной привязки тоже нет.

    Reply
  31. TODD22

    (30) Кто сказал что я не люблю ИПшников? Я сейчас работаю в ИП. Это всего лишь организационно правовая форма.

    Я говорю о том что есть крупные компании и мелкие. Все мелкие что мне попадались не платёжеспособны. Они ищут кто им сделает всё быстро, качественно и бесплатно. У них зачастую стоит не лицензионная 1Ска.

    Вот буквально месяц назад обратилась ко мне сеть ресторанов. Что бы я им помогал с БП и ЗУПом. Обращения редкие. Написать пару обработок понадобилось несложных и где то 3 часа консультаций. Говорю с вас 2000 руб. Говорят сейчас скинем тебе на карту и пропали… ни ответа ни привета. И вопрос то как бы не в том что бы эти деньги из них вытрясти. А в мелочности клиентов. Ты человеку помогаешь, учишь работать, разгребаешь завалы за 1.5 года накопившиеся, приводишь всё в порядок и он тобой очень доволен, но ровно до момента когда надо платить деньги.

    Ну и в ларьках с шаурмой задачи в основном такие же…. мелкие и разовые. Не встречал ещё мелкой конторы с большим объёмом работ и желанием это хорошо оплачивать.

    И работал по мимо фриланса ещё и во франчах. И у них нет больших объёмов работ и жирных. Только сказки от директора что вот если мы тут за 3 часа сделаем работ на 20 то потом у нас будет проект на 3 млн рублей….

    Reply
  32. Lapitskiy

    (31) TODD22, меня после перехода на удаленку тоже задолбали неплатежи (я понимаю, Расея, живем один раз, надо всех кинуть и т.п. идеология, типа схвати и убегай в европу)

    Я теперь спрашиваю аванс, если не готовы — значит не судьба )) И я спокоен и клиента потом совесть не мучает, что не смог заплатить 😉

    А советы, типа «создай себе образ хорошего клиента», «найди хорошего клиента», «работай только с хорошим клиентом» — это всё просто СЛОВА.

    Мы живем там где живем, с этим надо считаться.

    Почитайте вэб прогеров, их ощущения от работы с русскими и европейскими клиентами — разница огромная. Ну что есть, то есть — аванс помогает выправить ситуацию. Хотя на 100 процентов не помогает.

    Reply
  33. TODD22

    (32) Lapitskiy,

    А советы, типа «создай себе образ хорошего клиента», «найди хорошего клиента», «работай только с хорошим клиентом» — это всё просто СЛОВА.

    К хорошим клиентам 1сники в очереди стоят.

    Reply
  34. Golikov

    (29)

    Да хотя бы на ознакомление изменений вышедших в основных типовых конфах.

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

    Reply
  35. Lapitskiy

    (34) Golikov, да, какое то время можно «выезжать» на старых знаниях, но пройдет год, и можно будет прощаться с перспективами.

    Reply
  36. TODD22

    (32) Lapitskiy,

    И я спокоен и клиента потом совесть не мучает, что не смог заплатить 😉

    Совесть их по моему не мучает…. 🙂

    Reply
  37. apatyukov

    (33) TODD22,

    К хорошим клиентам 1сники в очереди стоят.

    так пускай стоят, вопрос их квалификации. Рынок показывает что неквалифицированных пруд пруд, в их число и студенты с тарифами 200 рублей в час, и конкурировать с этой средой нет смысла. Главное до заказчика донести различия .

    Reply
  38. TODD22

    (37) Вполне квалифицированные.

    Не надо думать что я один такой квалифицированный, а остальные студенты за 200 руб. Квалификации соискателей хватает более чем.

    Про «донести различия» если речь опять про «качество» то опять мимо… Заказчик не может оценить качество. Он в этом просто не понимает.

    Нигде и не разу не заходил вопрос о качестве. Потому что заказчик некомпетентен в таком вопросе. Он другими критериями рассуждает…

    Ему по барабану…Из своего опыта общения с большим количеством заказчиков могу сказать что у них есть только два критерия «Работает или нет» и «Сколько стоит»….

    Довольно странно слышать про какое то там качество….

    Reply
  39. apatyukov

    (38) TODD22,

    Не надо думать что я один такой квалифицированный, а остальные студенты за 200 руб. Квалификации соискателей хватает более чем.

    Про «донести различия» если речь опять про «качество» то опять мимо… Заказчик не может оценить качество. Он в этом просто не понимает. .

    Правильно не понимает. Так и задача донести ему в простых словах, те различия опираясь на которые он сможет сделать выбор в вашу пользу.

    Нигде и не разу не заходил вопрос о качестве. Потому что заказчик некомпетентен в таком вопросе.

    Ну так начните разговор первым..

    Он другими критериями рассуждает…

    Ему по барабану…Из своего опыта общения с большим количеством заказчиков могу сказать что у них есть только два критерия «Работает или нет» и «Сколько стоит»….

    В тот же термин работает можно вложить множество понятий, таких как (удобство интерфейса, скорость выполнения «тормознутость» и прочее , прочее, прочее)

    А Кроме как «сколько» стоит может интересовать сроки исполнения, возможность поддержки, написания доп. инструкций и т.д. и т.п.

    Reply
  40. Lapitskiy

    в общем, в копилке умений 1с-лансера должно быть «умение убеждать»

    Reply
  41. apatyukov

    (40) Lapitskiy,

    в общем, в копилке умений 1с-лансера должно быть «умение убеждать»

    где то так. как минимум умение вести переговоры.

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

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *