Skip to content

Instantly share code, notes, and snippets.

@drhenner
Created May 10, 2012 20:25
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save drhenner/2655665 to your computer and use it in GitHub Desktop.
Save drhenner/2655665 to your computer and use it in GitHub Desktop.
Ruby Job Description
class Geek < Person
include StarWarsFan
end
class SeniorSoftwareDeveloper < Geek
def initialize(information, ruby_projects = [])
@likes = ["Ruby", "JavaScript", "Software Meetups", "Startups", "Code Reviews"]
@minimum_qualifications = [ "2 years of ruby, 1 year if you kicked butt",
"Writes tests for code.",
"rspec or test unit",
"Good understanding of Security"]
@nice_to_haves = ["Open Source projects",
"Mini-test",
"Ecommerce",
"Ruby Blog",
"Good frontend Dev skills",
"Pair Programming Experience",
"Yard Docs" ]
@ruby_projects = ruby_projects
@description = information
end
def likes=(val)
@likes << val
end
def title
# "Right hand man / The person we need to start a solid core team."
"none"
end
def experience
(@minimum_qualifications + @nice_to_haves.sample(3)).join(' ')
end
def description
@description
end
def salary(cash = '120K',
equity = 'a good amount',
other = {:food => 'at lunch',
:vacation => 'within reason',
:insurance => 'soon to come'})
@cash = cash
@equity = equity
@other_compensation = other
end
end
class Founder
def initialize
@david_henner = SeniorSoftwareDeveloper.new('Created ror_ecommerce., Formally worked at Shoedazzle and several other companies. Been hacking on Ruby for close to 6 years.', ['https://github.com/drhenner/ror_ecommerce'])
@micheal_Zhang = BusinessGuy.new()
@mark_lovas = SalesGuy.new()
end
def get_tech_founder
@david_henner
end
end
class ArcherAndReed < Company
def initialize
@tech_team = [Founder.new.get_tech_founder]
end
def name
"Archer and Reed"
end
def product
"Men's custom fit Clothing"
end
def needs
SeniorSoftwareDeveloper.new('You')
end
def grow_tech_team(tech_guy)
@tech_team << tech_guy
end
def plan
"The tech team has several goals, The first is to support the sales goals. Second, is to automate as much as possible. Instead of hiring a new employee we will first be asking if a tech guy can automate the new employee's job. Third is to build an awesome culture, similar to github and to have an awesome time building great stuff. Fourth is to support open source projects. Last but not least, always live by the rule that 'Best Idea wins', titles should not determine what idea is the best idea."
end
def how_to_apply
'jobs@archerandreed.com'
end
def location
'447 Broadway, New York, NY'
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment