JavaScript Engineer

blogfoster

At blogfoster we nurture craftspeople, not just engineers.

Join the Engineering Team!

The position

We are looking for a smart, self-motivated software engineer to strengthen our development team. Your preferred programming language is JavaScript and you are passionate about the latest developments in that ecosystem, just as we are.

You’ll help us improve our entire platform, from our single-page web apps to our Node.js backend service.

You are always keen to challenge the current way of how we do things and try to improve it by making technical decisions and introducing standards.

You’ll be working in a small team that tries to operate agile and without much overhead.

Your daily routine includes discussions with your peers to help find the best solutions and a default to action.

About you

  • Do you have experience and love working with JavaScript? Ideally you’ve worked with Node.js, and you’re interested in working with React, Hapi.js or Express.js.
  • Do you love writing well-tested and robust code, according to modern JavaScript practices and standards?
  • Do you equally care about how building software is done as having it done?
  • Do you strive for innovative solutions that pushes the company and your peers instead of accepting the status quo?
  • You leave no stone left unturned when you are on the hunt for solutions. New problems occur every single day and sometimes we need to leave our comfort zone to tackle them.
  • You’re passionate about sharing your knowledge and experience among the team.

A few of the things you might work on

React.js single-page applications: The most important part for our customers. We write all our SPAs in React.js, Redux, and the ecosystem around both. Quality is important, and so we incorporate common standards, for instance Storybook. You might help us extend our component library by creating isolated, reusable, and well-tested React components.

Node.js micro-service APIs: The APIs are the foundation of everything. We put a lot of effort into the quality, robustness, and scalability of our APIs. Designing new interfaces, creating new endpoints and improving the testability is an integral part.

CI / CD system: The bread and butter of successful product development. We ship software every day, and we want to make sure it happens with high quality, looking out for test coverage and for always keeping the build green. We apply automated test execution and code quality checks, like ESLint.

With product management: You can only do an excellent job if you know why we build things from a product perspective. That is why you work with the product management to test features.

About us

Full-stack approach: The engineering team applies a full-stack approach. We encourage every engineer to work on the full range of tasks (infrastructure, backend, frontend) based on their preferences. The team supports each other to have the knowledge and skills for it.

Our engineering blog: We regularly publish articles about React & Co., Node.js, product development and engineering management. You might find something interesting, and we’d love for you to share your experiences and findings too. You should check it out.

10% time: Everybody on the team is free to spend 10% of their work time on innovative ideas and technologies which interest them, such as open source and thought leadership.

Remote work: We are open to people who don’t live in Berlin and don’t want to relocate. The only requirement at the moment is that you live in Europe. This makes the organization and process easier for all of us.

Technologies in Use

ES6 React Redux Webpack Babel Sass AWS MongoDB MySQL Redis Hapi Node.js TravisCI Logentries Sentry Docker

Engineering Culture

What defines a great engineering culture?

As part of the blogfoster engineering team, we believe a great culture focuses on:

Personal development:

Although we work in a team, every individual within the team has their individual expectations, goals and needs. Ensuring these get achieved helps everyone feel satisfied in their role.

Team & Relationships:

We tend to spend more time with our team at work than with our friends and family. At blogfoster, we do our best to ensure that the team and office maintain a friendly, respectful and secure atmosphere and environment, making sure that the time you spend working with us is comfortable and engaging.

Professionalism:

We continually work towards achieving the business vision and goals. We build solutions to fulfill the needs of our customers. We strive to get the right balance between quality and speed, to meet expectations in the most efficient way possible.

What do we do to achieve a great company culture?

Since the beginning of blogfoster, we understand that software engineering is a craft. One that we want everyone on our team to keep improving on. That’s why we have introduced 10% time that allows everyone to spend some of their time to experiment and improve.

We also run internal talks and sessions to expand and deepen our knowledge of technologies or software craftsmanship. You can find some of these on our Youtube Channel.

Tech Culture in Startups

Working in a tech startup as an engineer requires a unique mindset. Alex gives a broad overview of the daily challenges and skills that are necessary and valuable.

Intro to RxJS

Reactive programming is a well known asynchronous programming paradigm that finds application in many languages. Sean gives us an insightful introduction into RxJS, the implementation in JavaScript.

Engineering Core Values

We Are Team Focused

We only succeed as a team. Therefore, we care deeply about our relationships in the team. Respect, trust, and support are the key drivers of our team culture and achievements. We celebrate our successes and support each other in challenging situations.

We Don't Place Blame,
We Find Solutions

It’s easy to find fault, the real challenge is finding solutions. As engineers, coming up with new approaches comes naturally to us. This is the same way we approach teamwork. Instead of problems, we focus on creating with solutions.

We Take Ownership

We are responsible for our solutions and our behavior. Don't search for excuses. Getting things done and taking full ownership of our work is the baseline of a professional style. Things can and will break, and when they do, we take full responsibility and find ways to fix it.

Frequently Asked Questions

Your continual learning and personal development is important at blogfoster. It forms a core part of our engineering culture. To help foster that, we have introduced a 10% rule that lets you work on topics and technologies that don't necessarily relate to work projects.

Mentoring is another important part of personal growth. We support each other in the team to grow and improve as engineers. Additionally, we reprocess situations and solutions together in 1-on-1s to constantly create awareness of our daily work and behaviour.

We regularly have internal talks and sessions across a number of interesting topics, e.g. Tech Culture in Startups or RxJs. Additionally, the whole team goes to technology meetups once a month.

1. Meet & Greet

Let us get to know each other and see if this could be a good fit for both of us. Take this opportunity to ask any questions you might have too.

2. Coding Challenge

Participating in a coding challenge helps us to understand your ability and skill level better. Our focus on personal development starts here: we promise to carefully review your code and give you detailed feedback to help you grow.

3. Final Interview

You will have a final face-to-face interview with the CTO and another engineer. We usually use the coding challenge as a starting point and then delve into more technical topics.

This is also a great opportunity for you to meet the team, so we like to schedule a team lunch too!

4. Offer

If you successfully pass through all of the stages, we will send you an offer to join the blogfoster engineering team! We will call you to discuss the details, benefits and the contract.

If you have any more questions before starting, this is a good opportunity to ask them.

5. Getting Started

We will give you a personal on-boarding in the first 2 weeks, provide you with a development plan and help you to get set up as quickly as possible, so you can start creating great work.

Coding is your daily business and we want to understand your abilities.

Of course, we know that it is a time investment on your side. In return, we will spend time reviewing your code carefully and will provide you with detailed feedback.

We are open to people who don’t live in Berlin and don’t want to relocate. The only requirement at the moment is that you live in Europe. This makes the organization and process easier for all of us.