Reliability is a critical feature of most software, and maintenance rather than initial development predominates the cost of software. Yet, a large number of development teams treat operations as an afterthought instead of integrating operations into their development processes.
Teams that write code together should be able to debug issues together. But while we think a lot about engineering collaboratively, we rarely develop processes for debugging collaboratively.
The tech industry has a lot of hiring to do. According to the Tech City 2017 report, “the digital sector is creating jobs 2X faster than the non-digital sector”. At the same time, the tech industry is lacking ways of helping those in underrepresented groups get their first tech role. A possible solution to both of these issues? More internships!
Functional programming makes it easier to write concurrent, testable and expressive code. Even if you’re working in the object-oriented or imperative paradigm, you can benefit a lot by learning functional programming.
At some point, we all find ourselves at a SQL prompt making edits to the production database. We know it's a bad practice and we always intend to put in place safer infrastructure before we need to do it again — what does a better system actually look like?
WARNING: Making the transition from developer to lead is not without risks. Side effects include (but are not limited to): diminished sense of purpose, constant lingering doubt and feelings of inadequacy. These symptoms may disappear over time. If not, consult a professional or watch this talk.