Who am I?
I am Corey Floyd.
What do you do?
I am the The Apps Engineering Manger in the Reading vertical.
No, really - what do you do?
Ok - that is a pretty good question. In fact, it’s why I created this page. Partly to help those that I work with understand what I do, and partly so I understand what I do.
Below is pretty good layout of my goals, responsibilities and commitments. By writing this down I hope that anyone I work with will have clear expectations of what am doing day to day, and more importantly, how I can help them.
Ahh… pretty interesting, but shouldn’t you be doing X?
I’m glad you asked! it’s quite possible I should be doing something else. Or possible that I am doing something I shouldn’t be.
Like all wikis, this is a living document. If you see some gaps or overlap, let me know.
Ok, that’s great, can I just read it now?
Sure, just one more thing… if you need to reach me you can email me or find me on IRC (fjalapeno). And thanks for reading! 👋
These are the high level goals I would like to accomplish:
- Align Technical and Product planning to improve the feature development process and reduce uncertainty
- Increase collaboration of teams within Reading by working together on shared services and features
- Establish and maintain collaborative relationships with other teams that develop and maintain the services and infrastructure on which we depend
- Facilitate the adoption of new technologies developed by the WMF and the community into the Reading platforms
- Reduce administrative and synchronization overhead of engineers, allowing them to be more productive
- Maintain and improve quality of apps
The following are the responsibilities that generally make up my day to day activities:
- Identify and manage dependencies across Reading teams
- Coordinate meetings to manage dependencies and sync requirements across Reading and with external teams
- Identify and understand new technologies developed within WMF and the community
- Communicate benefits and costs of new technologies with Reading product managers to aide in product planning
- Work with product managers to coordinate Reading team meetings
- Develop technical plans to support and maintain services and infrastructure to support Reading platforms
Scheduling and Road MappingEdit
- Coordinate development and deployment schedules of services and product features among teams
- Maintain Phabricator board of feature epics across Reading platforms linking and tracking related work
- Maintain a roadmap for Reading maintained services
- Assist Reading product managers in Quarterly planning (focused on features with service and/or external dependencies)
- Gather product requirements from Reading product managers and work with Reading Tech Leads to generate technical requirements
- Document technical requirements
- Sync technical requirements across Reading platforms (Android/iOS/Mobile Web/Desktop Web) and with Reading Infrastructure
- Sync technical requirements with external teams which share dependencies (e.g. Services, Research, Discovery)
Coordinate with Tech Leads and/or product managers to ensure:
- Technical debt is managed and prioritized
- Regression testing is up to date and maintained
- Tasks are automated when possible
- Crash rates are kept below acceptable levels
- Code Review as needed / when possible
- Service development as needed / when possible
Line Manager ResponsibilitiesEdit
In addition to my technical responsibilities, I also work with the Engineers on the Apps Team to accomplish the following:
- Aid in professional development
- Make sure engineers maintain a healthy work-life balance
- Provide Performance Reviews
- Hold 1-1s to discus these topics
Below are the meetings I regularly attend:
- Android Iteration Review (bi-weekly)
- iOS Product Planning (weekly)
- Reading Infrastructure Team Weekly (weekly)
- Combined Apps Standup (weekly)
- iOS Retrospective (bi-weekly)
- Android Retrospective (bi-weekly)
- Tech Lead Meeting (weekly)
- Revscoring Sync (Research, weekly)
- Reading API/Services Sync (Services, weekly)
- Reading Services Sync (Bernd, weekly)
- Apps Product Manager Sync (iOS product manager, Android product manager, bi-weekly)
- 1-1s with each Apps Engineer (every 1-3 weeks)
- 1-1 with Apps Product Manager (weekly)
- 1-1 with Reading Engineering Director (weekly)
- 1-1 with Senior Director, Head of Reading (bi-weekly)