I have never been very strong when it comes to communication, because it is actually really difficult and uncomfortable. Let me explain with an example: Lets say we need to develop a product and you think approach 1 is great and your colleague thinks approach 2 is great. There are a few options how to solve this: Option 1: Just skip the uncomfortable discussion and hack away and hope you can code faster and show by example.
I have been “using” scrum for good 4-5 years now and I never took a major liking in it. Some scrum masters have made it more bearable than others. At Arago we were also put into the scrum process and I think we actually took it seriously. And keep in mind that I mainly run in the start-up scene, so the team sizes and projects scopes are likely smaller and the tasks more broad.
There are a lot of frameworks and libraries out there. I stumble upon new ones every now and then when I need a feature from them. Sometimes I just like to experiment and try out new stuff and so many times I have switched out a library that actually just replicates what I already can do, but comes with a slightly different syntax or/and promises of improved speed and size.
I had a chat with a developer outside my company and we had a discussion about the “unnecessary” usage of libraries. You know slowing down the loading speed etc. Our discussion started from whether help libraries like jQuery or lodash should be used or should we just use the plain JS functions. The classical, is it really worth including the whole library for this one function?. And although I don’t disagree completely, I always prefer libraries where it is not directly offered by JS, because:
At work we recently switched from angular 1.6 to react 15 and I have been frequently asked how would I compare the two frameworks. Everyone can read up the technical differences between the two frameworks themselves, but I want to offer my subjective thoughts on the matter, what comes to my daily work. Disclaimer: I have used angular for roughly 3 years and react for only a few months.
Things change very quickly in software development. I know it myself from web development and also dev ops. Every year there is a new stack or framework that becomes more popular than the current state of the art. And usually the new framework truly is better to use and more efficient, not only a marketing push from some tech giant. It means that as a software developer you need to be able to:
My 2 cents about working in a “office” team vs remote team. We have a core team of 4 people right now at the office and we have worked well together for over a year now. We haven’t had any problems and it felt really well organized. We used 2 week long sprints to plan our work, for planning we used JIRA and immediate questions answered on IM. Everything felt well oiled.
This is something I have been thinking about a lot lately and in hindsight I could have done things better. I went through most of my life thinking that it is perfectly fine just trying to beat the average. But in fact being above average is as good as being below average, it doesn’t really give the any benefit. The only way to actually gain something is of you are a so to say a star.
These are the things that I have learned through various situations in my life. Many of these seem naive, but only when I make the mistake I realize the importance of it. Taking damage is the best way to burn it into my memory. Put in the hours! Whether it is for your job, relationships or health. The single most important factor is putting in the time and focus.
That depends to some part what kind of developer you want to be, but the general answer is no, there is no need for a degree. There are so many great developers out there that did not learn it at the university. It is not a waste of time, but it is also not the best way to spend years of your life if you can do without. A lot of time is spent on formalities and general knowledge instead of spending your time on actually improving in a specific field.