Skip to content

Instantly share code, notes, and snippets.

View stevo's full-sized avatar

Błażej Kosmowski stevo

View GitHub Profile
@stevo
stevo / trinoob.md
Last active August 12, 2021 07:22

FAQ

Najpierw się pływa, później jedzie na rowerze, a na końcu biegnie.

Dystans Ironman to 3600m pływania, 180km jazdy na rowerze, oraz 42.2km biegu (maraton).

Ważne

Poniższe zestawienie zebrane zostało z moich osobistych doświadczeń i nie aspiruje w żadnym wypadku do rangi jakiegoś super-hiper poradnika pro-triathlonisty :)

@stevo
stevo / 1_event.rb
Last active May 9, 2019 14:40
Wisper - Pub/Sub Example
# spec/events/locks/code_generate_event_spec.rb
module Locks
RSpec.describe CodeGeneratedEvent do
it 'validates presence of code, reservation id and room id' do
expect(CodeGeneratedEvent.new(code: nil, reservation_id: 1, room_id: 1)).not_to be_valid
expect(CodeGeneratedEvent.new(code: '123', reservation_id: nil, room_id: 1)).not_to be_valid
expect(CodeGeneratedEvent.new(code: '123', reservation_id: 1, room_id: nil)).not_to be_valid
expect(CodeGeneratedEvent.new(code: '123', reservation_id: 1, room_id: 1)).to be_valid
end
end
@stevo
stevo / oop_and_architecture_verification.md
Last active July 27, 2022 09:05
OOP/Architecture Verification
@stevo
stevo / ror_verification.md
Last active July 27, 2022 09:05
RubyOnRails skills verification

Provide the list or PR or other contributions that proves understanding of each subject group or ask for tech interview (more time effective), where we will go step by step throught the following list.

Max score: 331

Minimum requirements:

  • Independent: 240 (+ all blue diamonds)
  • Mid: 280 (+ all orange diamonds)
  • Senior: 300 (+ all red triangles)

You will not get a pass if you check more than 5 items that you will not be able to prove being knowledgeable about during verification, so check items only if you are sure about them. Be advised, that questions will be rather general ("what does that return?", "what is it all about?", "what does that mean?", "how does that differ from x?").

@stevo
stevo / ruby_verification.md
Last active July 27, 2022 09:05
Ruby skills verification

Be prepared to explain and effectively use following language and ActiveSupport features

Max score: 152

Minimum requirements:

  • Independent: 100 (+ all blue diamonds)
  • Mid: 120 (+ all orange diamonds)
  • Senior: 135 (+ all red triangles)

You will not get a pass if you check more than 5 items that you will not be able to prove being knowledgeable about during verification, so check items only if you are sure about them. Be advised, that questions will be rather general ("what does that return?", "what does it do?", "how does that differ from x?").

@stevo
stevo / git_verification.md
Last active July 27, 2022 09:05
GIT Skills Verification

Be prepared to show following GIT CLI skills in action. All skills are required to get :

Working with GIT using CLI 🔹

  • can checkout new branch
  • can switch between branches
  • can display and understand git log
  • can add changes (interactive mode, all at once, selected files)
    • can split changesets when adding changes progressively
  • can edit changesets when adding changes progressively
@stevo
stevo / ROE.md
Last active July 27, 2022 09:05
Ruby On Rails approval requirements.md

Ruby (on Rails) backend developer

🚧 This document is being continuously fine-tuned, and thus may change upon consecutive verifications 🚧

Each verification is performed with Tech Lead unless instructed otherwise. Curated list of basic learning resources can be found here

Requirements

Independent developer

with_enumerated(Poller, :poll) do
$stop = false
poller = Poller.poll(condition: -> { $stop == true })
first_value = poller.next
expect(first_value).to eq 1
$stop = true
second_value = poller.next
expect(second_value).to eq 2
def with_enumerated(subject, method_name)
begin
subject.define_singleton_method("#{method_name}_with_enum") do |*args, &block|
return enum_for(method_name, *args) unless block.present?
public_send("#{method_name}_without_enum",*args, &block)
end
subject.singleton_class.alias_method "#{method_name}_without_enum", method_name
subject.singleton_class.alias_method method_name, "#{method_name}_with_enum"
yield
ensure
@stevo
stevo / have_table_row_spec.rb
Created June 27, 2018 13:42
HaveTableRow original specs
require 'rails_helper'
require 'support/matchers/have_table_row'
describe 'have_table_row matcher' do
context 'when columns are described by name' do
context 'when table contains expected data' do
it 'ensures that page have table with given data' do
page = Capybara.string <<-HTML
<table>
<thead>