Coding is no longer my main activity
My last job as a full-time programmer was as a Software Architect. However, my activities resembled more those of a Senior Developer.
I coded full-time professionally for more than seven years. I still code on personal projects. In November 2018 I changed job and my current role is now Solutions Architect. The company I work for is Wipro Technologies.
My duties are varied. Sometimes I think of myself as a Technical Lead. I have done activities more in line with Project Management or Business Analyst.
The software industry is a young industry, and it redefines itself on a daily basis. Roles, their description and responsibilities of each one varies from company to company.
My activities now include:
- Mentor and motivate developers
- Suggest and enforce best code practices
- Perform code reviews
- Aid developers in problem-solving
- Work closely to Project Managers and Business Analysts
- Work closely with the client. Task prioritization.
- Requirements gathering. Create tasks and assign them to a developer
- Identify risks and impediments and give a proper response
- Gather everything needed to start writing code (technical documentation, business documentation, images, task description, acceptance criteria, etc.)
- Delegate activities when needed
- Conduct daily SCRUM stand-up meetings
- Backlog grooming
- Work with other stakeholders of the project, particularly technical ones
- Design solution diagrams when needed
- Data analysis when needed
- Review technical documentation
- API testing and documentation
- Present finished sprint work to the project stakeholders
- Perform tests, work closely with the QA team
- Manage technical debt and iceboxes
- Suggest tools that will improve coding speed and quality
- Determine technical constraints
- Conduct UAT tests
- SPOC (single point of contact) for technical problem solving
- And many, many more.
But right now and because of contract reasons, I no longer code. Besides the technical aspect of my current job, I now realize why leadership and communication are in high regard in the industry.
Your mind needs to be very agile and adapt to any situation it may happen. People, especially developers, should follow you, or take your advice. The rest of the stakeholders trust you to get things done.
Lastly, communication is of uttermost importance. Delivering a false or unclear message can be very, very troublesome. It may sound easy, but it is not; especially when you do not have the full context of what is happening. Having full context is your job.
A poorly written requirement, a misleading or unclear email or bad verbal communication can be catastrophic for yourself and the project.
I recommend the Seven Secrets to Successful Business written by Edward Barr. It can help you to have better business communication. Ed was a professor of mine during my time at Carnegie Mellon.