We’re looking for skilled and seasoned Elixir engineers to join our small and cozy team that is focused on bringing value and we would really love to work with you if you share that mindset. Our company never had any VC’s involved and was profitable from day one for 6+ years by now so business value is not some “investors want this KPI”, but a real cash value for real customers. We are very stable and always have lot’s of work too :).
Business-wise we’re building products that sit in between our clients and end customers. Right now it’s mostly about filling the gap of communicating with customers and selling online, but we are flexible and adjust quickly to changing environment. You can read a bit about culture but we believe it changes with each new team member.
Tech-wise this job may be a bit challenging because we have all good/new/shiny projects (Elixir+PostgreSQL+GKE) and some legacy in Ruby that would make you a little bit sad :), fortunately it’s in maintenance mode and we are not very far from shutting it down. BTW, our web apps are built with Phoenix SSR and sprinkles of Javascript using StimulusJS, which reflects our pragmatic culture - we want to move fast and have reliable software with as few moving parts as possible.
We’re offering $60-$80/hr+. We work as independent contractors. We have a flexible schedule and the work here is very different from a traditional 9-to-5 job. Some overlap with Austin time zone is required to stay in sync with the team.
If you want to learn more check out our post below:
About us
My name: Alex Naumenko
Company name: Hammer Corp.
Website: hammertime.com
HQ Location: Austin, TX, USA
Job title: Senior Software Engineer
Salary range: $60-$80 / hr +
Position on remote work: Remote
About the job
We are looking for experienced, pragmatic engineers with production experience with Elixir. Any experience with Ruby would be a plus but it won’t be necessary in the long term. We don’t have a dedicated dev-ops in our team and everyone is expected to know how our infrastructure works. With that said, good experience with setting up and maintaining infrastructure would be a plus too.
Taking the idea from discussion in Slack to production-ready state is something that’s happening all the time in our team. So if you’re proactive and love thinking about the business side of things first you’ll find yourself in a good company here. We don’t have dedicated people that would tell our engineering team what to do. Everyone in our team is involved in the decision and planning process.
We do care about the quality of our code, but we’re valuing solved business tasks much higher than a perfect piece of code that would never get to production.
Having any experience with a front-end is a plus since we are using SSR with a minimal amount of JS. We don’t have a dedicated front-end team and are not planning to go that route in the nearest future. But we do have experienced full-stack engineers in our team that give you a hand with the most of heavy-lifting if you’re not feeling confident in that area.
Some of our products have interesting challenges involving data science and ML so that’s another potential huge plus for you if you have that experience.
What you’ll be working on:
We get that question a lot. It really depends on you and the way you’ll apply your knowledge and skills. One thing is certain - you’ll be doing Elixir a lot! !:)
Our company is very agile business wise. Between the time we’re posting this and the time we’ll talk to you we get a new product in our pipeline.
Our core products are about conversational sales: messaging, voice calls and real-time communication and lead generation. We’re the last mile between an end customer and our clients. We handle millions of messages each month that come from different sources and we act like an omni-channel for all inbound communication for them.
Something is changing more slowly though. Like we have a backlog of tasks related to rethinking and migrating the legacy part of our products that are still the core of business to the greenfield project that’s also in production now. But the accent is on rethinking here. We have no reason to migrate as is. That migration is a complete rewrite. And It takes more than redo something that was done by someone else. We need to consider all the lessons we’ve learnt on our path and free ourselves from limitations of the solutions we have right now. That legacy part of our product is tightly related to the automotive industry and we do a lot of integrations with third-party services.
We have a bunch of products and some of them are still running on our legacy infrastructure which combines Elixir and Ruby hosted on AWS with Convox used as a deployment tool. Most of the back-end pieces were already migrated to our new system, but we still have a lot of front-end parts in there (both back-office and client-facing interfaces) and some of the core back-end pieces like billing, reporting etc.
Our mainstream stack for the new products set is Elixir, PostgreSQL, RabbitMQ hosted on GKE (K8S + Terraform). Front-end part is a Phoenix SSR with Vanilla JS (with Stimulus JS) where necessary. We use plain HTML with EEX templates and plain CSS. Webpack is used in the assets pipeline. Most of those applications are part of mono repo with umbrella structure.
That’s a very broad spectrum, we get it. But it’s not like we’re looking to hire you for one specific project. We’re not a company of one project. We’re here for a long run and as the whole World is changing we are adjusting and always in pursuit of emerging opportunities.
Who you’ll be working with:
At this moment we’re a team of 7 great human beings and as engineers we have dozens of decades of experience in total. We’re all over the World and working remotely. We sync everyday in Slack and we have weeklies. We don’t have strict rules and avoid bureaucracy at all costs. We care about our business and about our team’s health equally.
Our business team is just amazing! We work back-to-back with them on a daily basis and we care about each other. Very often our engineering team is taking active part in business discussions and having a say in a decision process.
Overall our company is very open and transparent. Everyone’s opinion matters and all of us are working towards common goals.
How you’ll get paid:
All of our engineering team are independent contractors (1099-ers if we talk in US tax terms). We track our time and get paid for hours we’ve worked. And the word independent is covering everything. Like we don’t have paid leaves, insurances or any other perks that 9-to-5 employment usually provides.
You’ll get paid on a monthly basis and all we need is an invoice sent to our accountant. If you’ll need any other documents signed to comply with your local laws that also could be arranged.
How to apply:
Drop us a line via email. It can be a CV or just a description of your experience, what you love to do and not that much, your successes and failures. Please, don’t optimize your pitch for recruiters, we are all engineers so be direct and honest. We’re always curious about your responsibilities on the jobs you had. We don’t care about a title you had. We care about what you achieved while you were there.
So once we hear from you we’ll reach out to you over email. If your application would match our expectations we’ll schedule a video call with you. Our interview would take about 1 hour and shortly after you’ll hear back from us.