My new posts can be found on: https://eimert.github.io/.nl/. This wordpress blog will stay online as a reference.
This blogpost inspired me to write about the (infra) tech stack at ING.
What are the most common tools that developers use at ING?
In general, every infra developer uses Git, Gitlab, Gitlab-CI, Ansible, Jenkins, Lync, Atlassian tooling and Service Now. Developers choose their own IDE.
I frequently use these tools:
- Royal TS (terminal emulator)
- Sublime Text
- IntelliJ IDEA
- Lots of terminal tools for text mangling
Which languages do developers code in?
What is the development process like? (the life cycle of a piece of committed code)?
It varies per team. Generally, code is being checked in after running unit tests. Code is peer-reviewed before merging with master. Once comments are addressed, the merge request is approved and merged into master. Merges into the master branch trigger a build pipeline. New pipelines automatically deploy to production.
What is code review like?
A colleague checks if the code conforms to our Definition of Done (DoD) and acceptance criteria specified in the story. There is a peer-review to assess the impact on production from different angles.
How is testing done, and what kind of tests are run?
We currently use the goss test framework for infra code. I’ve seen teams that have built extensive automated test pipelines. Teams are encouraged to build the test automation they deem necessary. There are test VM’s available that are rebuild every night.
How is code deployed?
Mostly through pipelines built in Jenkins or Gitlab-CI.
What is an average day-in-the-life of someone on one of the development teams?
Most teams are working in sprint cycles of two weeks. Team members may choose to work from home. I’d say time is spend on engineering activities, experimenting, learning, meetings, operational support, and other activities.
Colleagues go to lunch together, there are lunch talks, and some go running during lunchtime. ING provides a weekly boot camp training after work. Or go for drinks after work.
What makes ING a special place to be a developer?
At ING you get to work at a recognizable brand. Teams at ING are working on continuous improvement of their processes. At ING you get to work with new exiting technology on a large scale.
Can you tell us a bit about your team and what you are working on?
I’m working with my team to provide Tomcat within the ING. We make sure Tomcat is offered free of vulnerabilities, integrates with deployment tooling, and conforms to rules and regulations. I like to keep in mind that most of the back-end of web and mobile runs on Tomcat.
I managed to arrange a second jobflirt, this time at a Java DevOps team. The team is providing a popular online payment method in The Netherlands.
Besides online payments, the team provides:
- iDIN (digital identification),
- eMandates (customer authorization for direct debits),
- and other (future) services.
My intention is to apply my Java programming skills in practice within a real team, working on an actively used application. And I’m looking for feedback to become a great engineer.
I’ve completed a few stories, writing code that is now running in production. I’m really content with the results we have delivered. Thanks to the excellent colleagues at the team, the code got reviewed fast, with good remarks. The agile rituals of the team have inspired me. I’ve got new, fresh pointers to books and practice materials to become proficient in Java.
Another successfully completed jobflirt that was mutually beneficial to both parties.
These are the books I’ve read or want to read. I can really recommend to go deep into the subject of personal development. Most of what I’ve read can easily be applied in everyday life :). Or sets into motion subconscious changes.
- Being Geek
- Team Geek
- Getting Things Done
- Prepare for hiring: Land the Tech Job You Love
- https://fearlesssalarynegotiation.com/ and podcast: https://devchat.tv/ruby-rogues/274-rr-fearless-salary-negotiation-with-josh-doody
John Somnez (http://simpleprogrammer.com/):
- Soft Skills: The software developer’s life manual
- The Complete Software Developer’s Career Guide: How to Learn Programming Languages Quickly, Ace Your Programming Interview, and Land Your Software Developer Dream Job
Credits: book suggestions from Martin Koel.
If you were to ask me to summarize the book ‘Team Geek‘ into one key point, it would be this:
“Great software is build by teams”.
Therefore modern workplaces are hubs where developers collaborate and build upon each others’ knowledge.
Functioning in a team boils down to having ‘HRT’ (hearth):
And to be an effective engineer, communication is vital.
Recently I started with a job flirt at work. It is a funky name for ‘experiencing what it is like to work for another team’. Next up there is more on my ‘big leap in personal development’.
I started at the TUX-team. I wanted to experience the engineering spirit within that team, and to get feedback on my soft skills.
After two sprints (four weeks) it was time to go back to my original squad. I enjoyed the job flirt. I exceeded others’ expectations of my soft skills. How did I do this?
Well, I’ve been meditating. Through meditation, I learned to be more patient and relaxed. And when I’m relaxed, that benefits others too. I’m easier to get along with, easier to approach and to collaborate with.
I started meditating on a daily basis eight months ago. I’m using Headspace guide meditations. Andy has done a great job by offering a Westernized approach to meditation.
Other credits go to the book ‘verbinding door avontuur’. Floor Vullings and Floris Muller have published this long awaited book about the ‘buitendoor‘ approach to team building and collaboration. It was refreshing to read and I could directly apply the material at the job flirt.
Website : http://verbindingdooravontuur.nl/
ISBN : 9789082823400
I did the EX300 exam on Friday 26-01-2018, and nailed it :). 271/300 Points: pass.
I used this Vagrant RHCE-lab to practise.
eimert@EIM ~ $ pastebin
eimert@EIM ~ $ echo $?
eimert@EIM ~ $ echo hi | pastebin
eimert@EIM ~ $
sleep 8h && renice
echo "we" >> make_fun. ; time watch 'date ; at teatime < make_fun.' ; date > bg && wait $(jobs) && look us make_fun.