How We've Helped Customers and Community...

 

Over the past couple of years, we've had the opportunity and privilege to work with customers and members of a growing community who are exploring evented, autonomous service architecture in Ruby.

Almost all of them have struggled to some extent with a monolithic Rails application that is increasingly difficult to make progress with.

Here are some of the ways we've helped:

Service Development and Delivery

  • Working independently or with customer teams
  • Complete service development and delivery, from the first line of code through to packaging and deployment
  • Testing

Analysis and Design

  • System and service analysis
  • Event workshopping and concept mapping
  • Stream and bounded context design
  • Delivery of roadmap

Coaching

  • On-going support, training, and pairing with teams and individuals
  • On-site or remotely via video conference and screen sharing

Prototyping

  • Fast, proof-of-concept development and delivery
  • Validating the viability of a project or product

Training

  • 2-day or 4-day training workshops
  • Rich materials, including animations, code examples, and numerous interactive and hands-on exercises
  • General evented and distributed systems fundamentals
  • Ruby techniques
  • Autonomous service and event sourcing basics
  • Communication patterns
  • Idempotence and concurrency
  • Service interaction
  • Data aggregation
  • Testing

Community Building and Engagement

  • Monthly in-person meetups and tutorials
  • Weekly on-line meetups
  • Online text channels
  • Conference presentations
  • Workshops

Recruiting

  • Matching open hiring requirements to members of the Ruby community with interest and acumen in autonomous and evented services

Initiative Support

  • Support an organization and managers through a services project or transformation initiative
  • Be the in-place "ally"

Project Management

  • Leading a customer's team through development and delivery of services
  • Providing guidance where necessary
  • Reporting and coordinating with stakeholders and managers

Monolith Remediation

  • Extending the viability of a Rails application
  • In-place design improvements
  • Delay major re-write and service implementation initiatives
  • Bolstering confidence in the existing implementation
  • Training developers on techniques and patterns