re: I am a 20-year-old software developer at a corporation, Ask Me Anything! VIEW POST

VIEW PARENT COMMENT VIEW FULL DISCUSSION
 

Yes, I have atleast one (and up to 2) mentor(s)/career coaches, depending on the area.
Especially since I am only 20 years old and started working 6 months ago (directly after school) it has been something crucial. Not only development wise but mostly company and work wise.
To be more specific about what I am being coached in, I would say the following:

  1. How to develop with a safe and reliable outcome that is both efficient, up to standards and according to basic programming rules (such as: coding patterns, etc.).
  2. How to communicate with colleagues on the right way. What is the smartest and fastest way? When to go where and when to go when? Giving me a bigger perspective on the general work/company flow and responsibilities.
  3. How to develop on a test-driven way and how to implement that in deployment and failure prevention. (Coming back to this later).
  4. How to discuss something and how to strenghten your arguments and when to know when to listen and to what, its really balanced.
  5. How to work with huge systems and what to do in stressing situations.
  6. How to work in general and what to appreciate outside and inside of work.
  7. And lots of lots of personal and career related hints and tips for the future, coming from many different perspective.

Even if someone isn’t my mentor, they are always willing to give an honest opinion; both good and bad.
But if I were to say what I have gotten coached on the most it is how to develop efficiently and how to work with others.
(One very important thing for where I work at, despite it being a huge company, you always have a voice and have something to teach others.)

When it comes to deployment, testing, pod and environment management, security, etc. we have a post-mortem for any type of accident. Not only do you learn about how to prevent incidents (test driven development, CI/CD, code reviews, standards, etc.), I have learned a lot about what to do when the world burns.
What I want to address in special is how no one is the one who “did it”. We are a team and we solve problems as a team. One person knows more than the other on both work and or on that specific application/environment.
In conclusion, we have a very clear post-mortem on accidenta with both what to do and to whom to go incase you can’t fix it.

 

Before I started working, I never truly used CI/CD.
I did work around with some CI tools that GitHub gave out of the box for free, but never truly and CD tools. This, however, all changed the moment I started working.
Currently, I love to work with multiple CI/CD tools, some which come from GitHub themselves, but out of those tools are two tools (both combined and standalone) that I can truly suggest for anyone to use.
To answer your question, I would say that my preferred CI/CD techs currently are:

  • Bamboo (Atlassian)
  • Spinnaker

It really depends on the ecosystem you are using on whether to use one of these standalone or to use them combined. To give a quick sum-up with what I mean with that, I would say:

  1. I normally use bamboo when it comes to a single server application(s) which are all hosted within the same server.
  2. But when I like to work with multiple environments spanned over multiple clusters, I love to combine both Spinnaker and Bamboo. Especially because Spinnaker doesn't build your applications with tests integrated as Bamboo does, and Bamboo doesn't truly manage your clusters on a higher level. (In this case a Kubernetes cluster)

There is a lot more to my preferred CI/CD tools that come to mind in this reply, thus if you have any questions, please let me know.

This is amazing, thank you for your detailed answer, Remco, it's really helpful for someone trying to understand the CI/CD world.

What do you use Spinnaker for, exactly? You said it manages your Kubernetes clusters - how so?

I haven’t really looked into the essentials of Spinnaker, but we use it to deploy to multiple nodes (if needed) in our cluster.
I personally do not work directly on the maintenance of our Spinnaker tool, our DevOPS department does, so I can not go into any specifications on how this works and what exactly is being managed. That is also the main reason why this answer is extremely short.

 
code of conduct - report abuse