This talk is based on a series of experiences I had working with my interns, sharing their experiences on other internships and improving my methods so we could take most of our 12 weeks together.
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?