I don't really need more work. But it's addictive. So I've been thinking about that alot.
Here's the position writeup for Gannett - they're looking for someone to replace me. It's nice to feel missed, in a sort of sad way. (I miss my friends there, and more than occasionally regret deciding that it was time for me to move on.)
Anyways, here's their writeup for my old position:
Principal Developer, Development & Integrations
The principal developer oversees the development and implementation of code for highly complex software applications. They have high-impact responsibilities within the team and are typically assigned to the most critical and strategic / complex / high-risk undertakings. A principal is responsible for architecting the systems that make up the framework the rest of the organization works with and builds upon.
A principal must ensure the integrity and durability of the code base by both protecting it from substandard changes and by designing defensively to mitigate user error and abuse. As a system designer, a principal must also educate and mentor the team that makes use of these systems to ensure adoption and also to identify gaps in the system. The principal is well versed on the latest advancements in his field and regularly evaluates new trends and technologies to improve the framework.
Define and enforce overarching architecture strategies
Identify high-level architectural issues and document/develop solutions
Review and merge high-risk changes
Develop solutions to mitigate user error (eg. automation, validation, etc.)
Mentor and develop best practices for developers within the team
Regularly ideate and develop new high-impact innovation projects
Provide team training on architecture, strategy, and technology
Define best practices and guidelines for lower level developers
Work with other disciplines to help shape new products from a technical perspective
Required Technical Skills
Bachelor’s degree in Computer Science, Computer Engineering or related technical discipline. Masters degree a plus.
9+ total years of software development and architecture experience with at least 5+ years designing and architecting enterprise web applications.
Experience working directly with senior Development and IT groups in an advisory role.
Strong object-oriented design and development skills.
Experience in integrating with 3rd party REST API’s.
Experience with Agile/Lean methodologies, continuous integration, GitHub, Git, Test Driven Development.
Sounds impressive, doesn't it?
So why did it feel like it was way too easy for me? I guess, in part, that is the nature of working for a large company. If you have the skills needed for a position you are way more qualified for it than what the job normally demands of you.
There's also an element of burstiness to working with computers. People like to think of computers as making life easier, but that's not really what they're about. Computers are tools that let people do more work.
For a media company, like Gannett, it's really important that the code facing the user is clean and relatively nice in appearance. But behind that? There's also a huge element of "it doesn't matter how ugly it is, just get it working" along with a huge variety of voices crying for arbitrarily different ends.
It's something that I think about a lot.