You work at a small charity, or a family logistics firm, or a clinic with forty staff, and you are the technology team. Everyone is kind. Nobody can review your code. When you get something right nobody notices, and when you get something wrong you find out from a customer.
It can be a wonderful place to learn, because you touch everything. It can also be a place where you quietly practise the same mistakes for five years, because nobody is there to point them out. The difference is whether you build your own teachers.
Start with review, because that is what you lose most. Find one or two developers outside the company who will look at a piece of your work once a month, and offer the same in return. A former classmate, someone from a local meetup, a person whose posts you have learned from. Keep the requests small and specific. Here is how I retry failed payments. What would worry you?
Write things down as if somebody will inherit them, because somebody will. Writing is also the nearest thing you have to explaining a decision to a colleague. A short note on why you chose this database or that hosting will show you the weak parts of your own reasoning before a customer does.
Read the code of good open projects that use your language and look roughly like your system. Not to copy. To notice how experienced teams organise the same things you are organising alone.
Ask your employer for a learning budget, and spend some of it on people rather than courses. A day of an experienced consultant reviewing your setup can teach you more than a month of videos, and most small companies will agree once you explain that it lowers their risk.
Keep a list of questions you could not answer, and take them to whoever you can find. A community forum, a paid mentoring session, a friend at a larger company. Asking strangers feels awkward at first. It gets easier quickly.
Finally, be honest about your growth. Once a year, put this year's work next to last year's. If it looks the same, the job has stopped teaching you, and it may be time to build a team around you, or to go and join one.
– Asael Shinder
Top comments (0)