Junior JavaScript Engineer (f/m/d)

blogfoster

At blogfoster we nurture craftspeople, not just engineers.

Join the Engineering Team!

The position

JavaScript is the programming language of our choice to build products for the internet. The language and ecosystem are so powerful and gives a great opportunity to apply the full-stack approach across the system, like APIs, front-end applications, infrastructure, and more.

The position is the right fit if you are passionate and excited 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 services.

You are always keen to challenge the current way of how to 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 gained entry-level software development experience with JavaScript, HTML, and CSS?
  • Do you want to develop and extend your skills in working with JavaScript and ecosystem?
  • Are you a curious learner and practitioner who is willing to learn new techniques and technologies?
  • You’re passionate about having technical conversations and sharing your 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. You might help us integrate a new feature 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

Mentoring: The team continuously supports you to develop and grow your skills as a professional software engineer.

Impact: Your work has a direct impact on our tens of thousands of influencers and hundreds of brands.

Involvement: Participate in all phases of the development; from requirements to deployment.

Agile development methodology: We use Kanban as our preferred way to coordinate our tasks. It gives us the focus and flexibility to handle software projects in the right balance.

Learning: We support you with paid learning materials, like online courses, etc. to learn new techniques and technologies.

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 environment 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.

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.

Simplifying our Tooling for Node.js Projects

tldr; We suffered from JavaScript fatigue and created something like create-react-app for our Node.js projects. By wrapping tools like Babel, ESLint, or Prettier with an additional CLI we can set up and maintain tooling much easier. Read the full article on our engineering blog.

Snapshot Testing Going Beyond UI

This article describes the Snapshot Testing which became popular lately as convenient approach of testing UI components. But Snapshot Testing application goes beyond UI, allowing to testing complex systems and API’s. Read the full article on our engineering blog

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.