;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Logo Pagbenk Seu dinheiro rende mais
Topo

Vendeu loja, fabrica ralos de até R$ 1.600 e agora fatura R$ 22 mi por ano

Aline Torres

Colaboração para o UOL, em Florianópolis (SC)

28/09/2017 04h00Atualizada em 28/09/2017 12h35

Salmo de Souza, 58, tinha uma loja de material de construção em Blumenau (SC) até que, para atender um cliente, projetou um ralo diferente. A peça ganhou prêmio, e o empresário decidiu abrir uma fábrica de ralos. Em 2016, ele faturou R$ 22 milhões. O lucro não foi divulgado.

Souza abriu a Ralo Linear em 2011 em Blumenau. Ele não revela o investimento inicial. Para 2017, a estimativa é faturar R$ 35,2 milhões, um crescimento de 60% em relação ao ano ado.

Para abrir a fábrica de ralos, Souza fechou a sua loja de material de construção, um negócio familiar de 25 anos, mas que teve perdas financeiras em 2008, por causa das enchentes na cidade. Muitos clientes cancelaram encomendas, e isso refletiu na saúde da empresa.

Nessa época, Souza já estudava a criação de ralos. “Percebi que entre os produtos comercializados na loja havia uma mudança considerável no design de pisos, torneiras e chuveiros, menos nos ralos, que continuavam básicos e de plástico”, relata.

Primeiro ralo criado por ele ganhou prêmio

Souza diz que desenvolveu o primeiro protótipo de ralo, em 2008, com material da própria loja. Ele foi motivado pelo comentário de um cliente sobre a insatisfação de cortar o piso da casa nova para adequar o ralo.

O empresário diz que, para ter uma opinião fundamentada sobre o protótipo, levou o produto para os alunos de engenharia e arquitetura da Universidade Regional de Blumenau.

“Eles gostaram tanto do ralo com design mais arrojado, feito em aço inox, que o inscreveram no Idea Awards/Brasil, em 2009”, diz.

Nesse concurso, o produto, batizado de ralo linear, ficou em terceiro lugar na categoria casa. Foi a partir de então que Souza ou a desenvolver a peça em larga escala. Hoje, o ralo premiado foi aprimorado e virou o modelo multimaster.

“O prêmio foi o impulso final para abrir a empresa”, diz Souza, que recebeu recursos de dois investidores-anjos, cujos nomes e valor investido ele não revela. Os dois são sócios da empresa.

Empresa tem 200 opções de ralos e começa a exportar

Com 200 opções de ralos, 4.000 clientes e 42 representantes em todo Brasil, a empresa também está em fase de expansão para mercados externos.

"Estamos exportando nossos produtos para 11 países da América Latina e ilhas do Caribe. Iniciamos a exportação em setembro para Panamá, Honduras e Guatemala", diz.

Atualmente, a Ralo Linear emprega 150 funcionários, entre diretos e indiretos. As vendas são direcionadas para grandes lojas de material de construção, de design e decoração.

Ralos que chegam a custar R$ 1.600

A empresa oferece ralos de formatos e modelos variados: aço inox, coloridos, redondos e compridos, entre outros. Os preços variam de R$ 120 (modelo square fun 15x15 cm em PVC) a R$ 1.600 (modelo multimaster 200 cm em inox 304).

O campeão de vendas, segundo a empresa, é o ralo square (formato 15x15cm), que custa entre R$ 120 e R$ 260. Ele tem base em PVC e algumas opções de tampa.

O modelo square oculto, por exemplo, vem com uma subtampa de inox, e a cobertura da peça fica a critério do cliente (mas geralmente, diz ele, é coberto com o mesmo piso do restante do ambiente). O square tradicional tem tampas feitas em PVC nas cores vermelha, branca, preta e cinza.

Nicho requer inovação constante, diz especialista

Ionita Lunelli, analista técnica do Sebrae, diz que criar estratégias de aproximação com lojistas e profissionais do setor é uma forma eficiente de construir uma rede de contatos.

Para ela, no entanto, o investimento em nicho requer inovação constante. "Se em um ou dois anos não for lançado um novo produto, os concorrentes podem copiar modelos ou até lançar mercadorias mais atrativas."

Ionita diz também que o mais importante é ter o foco voltado para o consumidor final. "Não adianta lançar produtos cheios de criatividade que não vendem. Conhecer, estudar ou ter experiência sobre o mercado é um diferencial importante", afirma.

Onde encontrar:

Ralo Linear - http://www.ralolinear.com.br/

Como Faz? Remova o cheiro do ralo em três os simples

Universa