I’ve been a ruby developer for a little more than 10 years or so and have a stack of projects that I’ve been intending to get to but haven’t made the time to follow through with.
After reading several posts on this list regarding the challenges new developers face when finding their first real programming job, an idea for an experiment arose:
Mentor a small group of new programmers in developing open source code and develop the stack of projects as representative work for future employers. The idea attempts a symbiosis creating a broader area of work to show to potential employers while also building some cool products.
I’m envisioning two to four pairing teams to work together on some very specific pieces of the development. About once a week or so, get together in person to discuss what has been done and define the next areas of work. We would implement common team practices (group chat, pull requests etc) in order to gain more familiarity with the process of developing good software.
This experiment is still being developed but has the following goals:
Learning Objectives For All Participants:
- Develop more experience in a programming language
- Develop more experience with a regular engineering workflow
- Develop pairing and collaborative relationships
- Solve real world problems and develop products similar to how it’s done in a business context
- Share code, continue to develop public portfolio
- Experiment with code/patterns/challenges outside your regular work environment
Learning Objectives Specific Backend Developers:
- Gain more experience in ruby development including composition and testing
- Gain more experience with integrating other services like Redis, Elasticsearch etc.
- Gain more experience in deploying and supporting real world products
Learning Objectives Frontend Developers:
- Gain more experience with the tools of frontend development (grunt, bower, gulp etc.)
- Build very performant interfaces
The products being built would have to satisfy the criteria:
- Interesting to all team members
- Have clear technical challenges that could be demonstrated to potential employers
- Incorporate/aggregate external data sources to produce unique experiences
If this sounds interesting, please let me know by filling out this form.