Summary
- We're an early stage MarTech company with a remote team, headquartered in Berlin
- We're hiring our first full-time engineers in addition to the founding team
- Our codebase is TypeScript on both frontend and backend
- There's a wide variety of projects to work on and tons to learn, such as working on our React web app, data infrastructure on GCP, public API, JS snippet, and more.
- You need to currently live in the UK or Europe in one of the countries listed below
- This is a full-time, remote role
- Link to apply below!
About the role
Affilimate looking for a senior fullstack engineer experienced with TypeScript, React, and Node.js to join us.
Our product is a web analytics and data aggregation platform used by media companies, digital marketers, and content creators. We track millions of pageviews per day and millions in revenue every month for our customers.
This role is a great fit for well-rounded software engineers, who enjoys working in the the frontend and backend, and some infrastructure.
Our team is small and our processes are efficient. You'll eventually ship code to production on a daily basis.
Our cofounder, Monica Lent, is a software engineer with 10+ years experience in tech and leadership, and will work with you to get you up to speed quickly.
Our tech stack
Our codebase lives in a monorepo consisting of about 190,000 lines of TypeScript. Specific technologies we use are:
- Frontend: React 17, Firebase, Emotion, Material UI, Recharts
- Backend: Firestore, Cloud functions
- Testing: Jest
- Infrastructure: Google Cloud Platform
- Database: Firestore, Realtime database, Postgres, Redis, BigQuery
In general, our codebase is pretty modern and in great shape.
We're looking for someone who can balance a high level of code quality with practical decision-making.
Typical tasks will include:
- Implementing UI, UX and onboarding improvements based on prepared specs and design mockups.
- Building new reports and data visualizations, including pulling the data from the database(s) in a Cloud Function, formatting it for display it in charts and tables, and adding search/sort/filter capabilities.
- Building new tools, like our Link Generator, where you also need to store or cache data to make them fast and performant.
- Writing API integrations following proven patterns and systems.
- Crawling sites and browser automation with Puppeteer. For example, to generate screenshots or retrieve website metadata.
- Working on our upcoming public API, as well as integrations with data warehouses or BI tools like Looker and Databricks.
- Extending our analytics infrastructure with new capabilities and data points.
- And of course, maintenance, refactoring, and fixing issues reported to our Support team, as well as writing internal documentation.
A few specific features we have on the horizon are: team management, user roles and permissions, a link generator tool, and segment-based reporting.
In general, there's a wide variety of work, so there's a lot to learn no matter your background.
The product
Affilimate is an analytics platform that helps media companies, marketers, and creators grow their website's affiliate revenue by understanding exactly where their revenue is coming from.
We do that in three ways:
We’re already handling tens of millions of monthly events and looking to scale 100x.
Location
You need to currently live in the UK or Europe, in one of the following countries:
Austria, Belgium, Bulgaria, Croatia, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta, Netherlands, Norway, Poland, Portugal, Romania, Slovakia, Spain, Sweden, or Switzerland.
If you need an employer to continue working on your current work visa, we can probably support you!
We are not able to sponsor relocation to Europe.
Benefits
- Work remotely and enjoy flexible hours
- Low stress, low meetings, zero politics
- Influence the product direction and see your work directly impact the business and our customers
- Opportunity to take on (technical or people) leadership responsibilities as the team grows, if that’s something you aspire to or have past experience with
- Equity is on the table for the right candidate, depending on how your role and responsibilities evolve
What we're looking for
Our ideal candidate fits the following profile:
- 7+ years prior professional experience. You should have strong technical experience, ideally working in a startup.
- Very strong understanding of data structures. A huge part of the job is data aggregation and transformation, so you can store/retrieve/display data in different ways.
- Strong TypeScript skills. You need to be comfortable working in a TypeScript codebase, and fundamentals like using generics, union types, etc.
- Experience with React. A big part of the job is building and improving our UI.
- Command line fundamentals. You should be comfortable working on the command line as needed. Comfort with git is also a must.
- Mindful of security and performance. Performance matters at our current and future scale, and nothing is more important to us than security of our customer data.
- Care about design and UX. You should be comfortable with CSS, and pay attention to detail when implementing designs.
- Strong English communication. You should be able to clearly discuss technical topics in English.
We're building a diverse team, and welcome non-traditional backgrounds.
You are welcome to apply even if you feel you don't fulfill all listed requirements.
Bonus points
You'll be at a strong advantage for this role if you have:
- Experience on Google Cloud Platform.
- Experience working on data-intensive products from both the frontend and backend standpoint.
- Comfort with SQL, and any or more than one of our databases like Firebase, Redis, BigQuery, or Postgres.
Expectations
- You can work independently while still asking questions when something isn't clear.
- We'll start slow and tag team over Slack as you learn the product, domain, and codebase.
- After 2-3 weeks, you'll able to independently handle small features, add functionality to existing screens, and fix simple bugs.
- After 1-2 months, you'll be able to implement small to medium-sized, standalone features, build new screens, and fix more complex bugs.
- After 3-5 months, you'll be able to contribute to system refactors and more architectural-level changes.
Hiring Process
- Fill out the application form linked below. You'll hear from us within 1 week.
- If you pass the application, you'll get a short coding test (15-20 minutes) to help us evaluate your programming fundamentals.
- Then, we'll do an initial interview over Zoom to learn about you and share more about our company.
- Finally, a more practical programming task to get an idea of how you'd work on a sightly larger project (under 1 hour).
- In the end, we'll see if we're a match from both sides.
Our goal is to fill these roles by the end of April.
To apply
Please click the Apply now button below and fill out the form to apply for this role.
Demonstrating an understanding of our product and this role will dramatically improve your chances of moving to the next step.
Thanks for your time, we look forward to receiving your application!