What does a PHP Developer do at Coolblue?
As a PHP Developer you work together with other development teams to make our webshop work as optimal as possible and to make our customers happy.
Although you are a PHP Developer, you are not averse to a little C# or Typescript. Would you also like to become a PHP Developer at Coolblue?
Read below if the job suits you.
You enjoy doing this
This calendar makes you happy
Stand-up Close 09 : 45
Providing an update on the primary story I’m working on : updating the Belgian postal code check.
By having a daily check-in with my team, I’m aware of anything blocking their progress, and they can help out. My front end colleague also points out during this stand-up that she updated the validation rules slightly and asks that I apply the same change to maintain consistency.
Developing Close 10.00
Updating the regex used to validate Belgian postal codes based on the suggestion made by Madelon. Now people living in Ghent can also order products again!
Of course I’m also writing a quick unit test to verify the new behavior, and make sure this problem won’t reappear later.
The team lead suggests that next time we should apply TDD so that the wrong regex would have been spotted earlier on.
Pair Programming Close 11 : 30
Jaimie was getting stuck on a fairly complex part touching the website’s main routing functionality. By pairing up with him I’m able to help him figure out why certain route parameters were not being matched successfully.
In the end, all I had to do was ask the right questions. I ended up learning a lot about the Router component myself, which I really like!
Putting feature online and monitoring it
Putting feature online and monitoring it Close 13.30
The postal code feature has passed its PR review and is ready to be released. Time to hit the Merge button so our automated CI / CD pipeline kicks off.
Team Hosting & Deployment make sure that deploying is like a piece of cake.
A couple of minutes later the change is deployed to Testing, Acceptance and eventually lands on Production.
I open up our Datadog dashboard to check if the continuation rate for this form is affected, ready to roll back if needed.
Fortunately my code is flawless, and the metrics show a slight increase in continuation as expected.
Implementing feedback stakeholders on new feature
Implementing feedback stakeholders on new feature Close 15.00
I’ve released the improved postal code validation. Now Customer Journey Specialist José, my primary stakeholder, reports that while the feature works she does feel that the error message could be a bit more friendly.
She provides an updated text and asks if I still have room within the story’s estimated space to pick this up or whether she should create a follow-up story.
For today I’m already done, but I let her know that I can get around to it tomorrow.
Stand-up Close 09 : 45
Updating my team on the release of the postal code validation I did yesterday, and mention the additional PR for updating the error message.
Jaimie offers to review it immediately after stand up so I can wrap up the full story and move on to the next.
Jaimie lets the team know he managed to solve the routing issue with my help and is finalizing his PR. I offer to help him out by reviewing his tests.
Attend Demo Hosting & Deployment
Attend Demo Hosting & Deployment Close 11.00
Team Hosting & Deployment shows that they have enabled support for the NodeJS 16 runtime in AWS Lambda.
I’m making a note for myself to talk to my Product Owner about scheduling some time during the next quarter for migrating our three services over.
While I mostly write PHP, these microservices also fall within the scope of our domain, and it’s been fun learning a bit of TypeScript to maintain them.
Developing Close 13 : 00
Looking at the Scrum Board, I notice that the top-most story is mostly front-end work, converting the submission of the newsletter signup form to AJAX instead of a classic submit.
I reach out to Madelon to check if she already has some thoughts on the contract between the Front- and Backend. She has some ideas, but nothing concrete yet.
I offer to write a contract proposal so when she gets around to this story we can get started with the implementation.
Sync with Yuliya
Sync with Yuliya Close 16.00
It’s time for my monthly sync with Yuliya. We used to work together in the same team, but she left our team when she got promoted to Team Lead.
We agreed to keep syncing regularly to stay in touch.
Stand-up Close 09.45
Whoop, time to go to the office! Wednesday is our office day.
During the stand-up the team congratulates me. It’s my birthday! After everyone has provided their updates on the projects they’re working on, I walk over to the cafeteria to grab some plates and forks for the cake I brought. Yum!
Developing Close 10.00
Madelon has finished up the story she was working on and is starting on AJA
X’ifying the form. The proposal I wrote yesterday proves very useful.
I thought this was going to be really simple, but for some reason the browser refuses to make the AJAX call when I try to get her proof-of-concept working against the backend.
Madelon quickly points out that in the development console the browser is complaining about CORS.
Lunch Close 12.00
The team was really looking forward to getting pizza at the local Italian take-out. Mama mia, this is going to be good!
13 : 30
Watch the MondayAfternoon
Watch the MondayAfternoon Close 13 : 30
Every monday, Pieter, the CEO of the company sends out a short video to update everyone on the most important issues happening and highlight major and minor achievements by the teams.
Backend Meeting Close 14.30
Every two weeks we meet up with all the backend developers to discuss issues that span across all the teams.
We also discuss the most recent outage. Unfortunately we don’t know the root cause of Redis connections being rejected yet, so a task force is started.
I volunteer to help out, even though I haven’t worked with Redis a lot yet. Participating in task forces is always a great learning opportunity, and perhaps my knowledge of the Linux network stack can come in useful.
After the meeting concludes, I head back to where my team sits. The weekly Borrelbox has already been opened!
Stand-up Close 09.45
Time for the stand-up. It sounds like we’re getting close to achieving the goals we set for ourselves for this sprint. If we keep going like this we’ll wrap up all the stories with about a day left.
That leaves some room for cleaning up the tech debt I came across earlier while working on the forms backend. The old implementation we’re replacing is now used in just one place, so we could probably refactor that code a bit to simplify the remaining usecase.
Developing with Taskforce
Developing with Taskforce Close 10.00
Yesterday I signed up for a task force to investigate the Redis-related outage we saw last week.
We talk about several theories we have that might explain why the webshop cluster was suddenly unable to connect to its cache.
Pair Programming Close 13.00
Yes, time to pair program, love it!
Madelon wants to collaborate on making sure the frontend and backend collaborate nicely for the form. As we test the feature, we notice some hick-ups and solve these right away.
After that Madelon adds a unit test for this on her end, and we declare victory.
We create a PR to ship our combined work.
Coffee time with buddy
Coffee time with buddy Close 15.30
As part of my onboarding I was assigned a buddy. Every month we make some time to have a coffee and reflect on how things are going.
Super demo Close 17.00
Every Thursday and Friday, Coolblue’s teams stream out of the office into the nearby party venue where Pieter Zwart takes the main stage to introduce this month’s Super Demo, where we take a deep-dive into one of the major goals Coolblue is working on this year.
This time around it’ll be focused on Bluebuilt, our in-house brand for accessories.
Stand-up Close 09.45
Final standup of the week! We go through the last remaining stories. Turns out that one of them got blocked at the very last moment.
The stakeholder was not being fully convinced that the behavior she noticed during the stakeholder-check was as intended, and needed some time to validate.
Bummer! Fortunately the rest of the stories are all done.
Sprint review Close 10.30
We present the work that we delivered to our stakeholders so they can provide feedback on what we built. We usually invite one of them to be a Guest Star and have them run through a short scenario using the new functionalities. .
Developing Close 13.00
Together with Madelon I’m implementing the feedback of the stakeholders provided during the Sprint Review. Using our standardized component library it’s pretty easy to add in the requested UI-hints.
Glad to see the hard work we invested in this is paying off now!
Learning timebox Close 15.00
During our sync, my team lead noticed that I’d been investing too little time in my learning and self-development goals, because the past few sprints were pretty hectic.
We agreed to reserve a weekly timebox at the end of the week for brushing up on my AWS skills.
DigiDrinks with the team
DigiDrinks with the team Close 16.30
Time to wrap up for our weekly DigiDrinks. Not being in the office together for a long time made us feel a bit disconnected from each other, so when Yuliya mentioned that in her team they introduced DigiDrinks and it was a great success, I proposed to do the same. Cheers!
You recognize yourself in the following
This is what you’re looking for in a job
Including desk chair, laptop, and blue garlands.
How does Coolblue adhere to the COVID-19 measures?
We adhere to the recommendations and guidelines of RIVM and the government, of course. Working at the office makes us happy, that’s why we are working partly from home and partly from the office.
The interviews for your application will also take place partly via video calls and partly in the office. On your first day we meet each other at the office.
So we can drink a cup of coffee and get to know each other better.
Can I live outside the Netherlands and still work in the Tech department of Coolblue?
No, it’s not possible to work from abroad as a Tech colleague. We like collaborating in a digital way, but over this last year we’ve seen that doing a retrospective, a pair-programming session, or grabbing a drink in real life is much more fun.
That’s why we like everybody to be in the Rotterdam office at least 4-8 days a month on average. Together with your manager, you decide how often you and your team really meet in the office.
Besides that it’s much more fun to see each other in real life, there are also some tax regulations that make it hard to work from abroad.
For a lot of vacancies, we have the possibility to help you (and your family) to relocate to the Netherlands. Visit our for more information about moving to the Netherlands.
How often do I go to the office?
Together with your manager, you decide how many days you and your team will be in the office. On average, this will be at least 4-8 times a month.
Do you help new colleagues relocate?
Yes, we do this for most vacancies. If the vacancy you’re interested in has a relocation sign on top, it means we’ll help you (and your direct family) to relocate.
You can find more information on our
Do I need to live in Rotterdam when I move to the Netherlands?
No, that’s not necessary. The Netherlands is a small country, so if you want to live in Amsterdam, Utrecht, or Tilburg, that’s okay.
As long as you are able to meet your team in the Rotterdam office around 4-8 times a month, you can live wherever you want.
Can I keep developing myself?
Coolblue University : learning at Coolblue, in a different way.
With over 30 training courses in our own Coolblue University, you can get a little bit better every day. At Coolblue, we go back to school sometimes.
But not by sitting there quietly and just listening. The training courses aren't boring, but interactive. You have to do exercises and have discussions with others.
At the Coolblue University, we choose what we want to learn, so we can continue to develop en become real experts. For example, a Delivery Driver needs different training courses than a Customer Service Employe and a starter needs different courses than a manager.