Разрабатываю смарт-контракты на языке FunC для сети TON — от простого обработчика входящего сообщения до целого протокола. FunC — низкоуровневый C-подобный стековый язык TON, который транслируется в Fift и ассемблер виртуальной машины TVM, так что я работаю у самого основания, где стоимость газа и расположение данных в ячейках определяют цену каждой операции. Понадобится собственный токен, нестандартный кошелёк, эскроу-договор, хранилище с вестингом, торговая площадка или пул обмена DEX — продумаю состав контрактов, порядок пересылки сообщений между ними и схему хранения состояния, после чего реализую всё чисто и предсказуемо.
В результате вы получаете исходный код на FunC, готовый к боевому запуску, с понятной разбивкой на модули и пояснениями; реализацию стандарта Jetton (эмитент и кошелёк владельца) либо индивидуальную модель взаимозаменяемого или уникального актива; обработку внутренних и внешних сообщений с грамотным откатом bounce; ветвление по op-кодам; и слой get-методов, чтобы интерфейс и индексаторы получали состояние без лишних обращений. Отдельно слежу за операциями над ячейками и слайсами, глубиной вложенных ссылок и кодами завершения, ведь в TON неаккуратная структура превращается в вечную надбавку к газу.
К каждому контракту прилагаю тесты. Гоняю сценарии в локальном эмуляторе TVM: нормальные вызовы, повреждённые сообщения, повторные отправки и попытки от постороннего адреса, а также измеряю расход газа на операцию, чтобы итоговая цена была ясна ещё до выхода в основную сеть. Настрою скрипты развёртывания, сборку через Fift или TypeScript и лёгкий клиент без тяжёлых зависимостей для вызова из среды Node либо браузера. Провожу и аудит готового кода FunC: выявляю опасные гонки сообщений, устраняю потери на плате за хранение и ускоряю узкие участки ассемблера TVM. Отправьте техзадание или ссылку на репозиторий — оценю трудоёмкость, распишу коды завершения и передам контракты, которые уверенно пройдут внешнюю проверку.
В результате вы получаете исходный код на FunC, готовый к боевому запуску, с понятной разбивкой на модули и пояснениями; реализацию стандарта Jetton (эмитент и кошелёк владельца) либо индивидуальную модель взаимозаменяемого или уникального актива; обработку внутренних и внешних сообщений с грамотным откатом bounce; ветвление по op-кодам; и слой get-методов, чтобы интерфейс и индексаторы получали состояние без лишних обращений. Отдельно слежу за операциями над ячейками и слайсами, глубиной вложенных ссылок и кодами завершения, ведь в TON неаккуратная структура превращается в вечную надбавку к газу.
К каждому контракту прилагаю тесты. Гоняю сценарии в локальном эмуляторе TVM: нормальные вызовы, повреждённые сообщения, повторные отправки и попытки от постороннего адреса, а также измеряю расход газа на операцию, чтобы итоговая цена была ясна ещё до выхода в основную сеть. Настрою скрипты развёртывания, сборку через Fift или TypeScript и лёгкий клиент без тяжёлых зависимостей для вызова из среды Node либо браузера. Провожу и аудит готового кода FunC: выявляю опасные гонки сообщений, устраняю потери на плате за хранение и ускоряю узкие участки ассемблера TVM. Отправьте техзадание или ссылку на репозиторий — оценю трудоёмкость, распишу коды завершения и передам контракты, которые уверенно пройдут внешнюю проверку.