authentic_jobs 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,69 @@
1
+ {
2
+ "listings": {
3
+ "listing": [{
4
+ "id": "4428",
5
+ "title": "Interactive Art Designer",
6
+ "description": "<p><p>Description <strong>Marketing Communications Designer<\/strong><br \/><strong>Full-Time Salaried with Stock Options\/ Benefits<\/strong><br \/><strong>Reports To:<\/strong> Creative Director<br \/>&nbsp;<br \/><strong>Who We Want:<\/strong><br \/>&nbsp;<br \/>Bazaarvoice is looking for a skilled and technically savvy visual\/web designer with superior HTML &amp; CSS skills. This is a high-impact role with responsibilities that include design of our corporate web &nbsp;sites (www.bazaarvoice.com, &nbsp;twitter.bazaarvoice.com &amp; www.bazaarblog.com) and creation of infographics &nbsp;and other design materials for the&nbsp;Product Marketing team.<br \/><br \/>Each team is different here at Bazaarvoice; we all bring our outside interests into BV daily.&nbsp; We are looking for someone who is a hard worker and a self starter, an individual who is inquisitive, coupled with a sense of humor and optimism.&nbsp;<br \/>&nbsp;<br \/><strong>Requirements:<\/strong><\/p>\r\n<ul>\r\n<li>BS in Design (Art, Computer graphics, etc.) <\/li>\r\n<li>3-5 years of hands on experience building out Info Graphics <\/li>\r\n<li>3+ years of hand-coding HTML and CSS, plusses for YUI and\/or&nbsp; JQuery and JavaScript <\/li>\r\n<li>Must be able to provide a design portfolio for our team to review <\/li>\r\n<li>Experience Developing Info Graphics <\/li>\r\n<li>Possess a large, well received design portfolio to share <\/li>\r\n<li>Expertise in developing web pages and\/or web-product mock ups in HTML and CSS (JavaScript is big plus) <\/li>\r\n<li>Proven experience in lead generation and direct response design are also necessary. A candidate who has created\/tested\/optimized email and landing pages is preferred. <\/li>\r\n<li>Excellent written and Verbal communication skills, comfortable presenting ideas to a large audience <\/li>\r\n<\/ul>\r\n<p><strong>Why this Role?<\/strong><br \/>This role is unique; it helps shape how the world views Bazaarvoice.&nbsp; You will be the main designer in charge of Bazaarvoice.com. Your work on the site will be a critical part of our visual brand, closely working with the Product Marketing team to define how our products are explained and sold to the market place.<br \/><br \/>Being the Marketing Communications Designer carries a terrific amount of responsibility. &nbsp;This role is one of the main points of interaction customers, prospects, employees, investors, job applicants, the press, and analysts have with our brand.&nbsp; The Marcom Designer is a face of Bazaarvoice.<br \/>&nbsp;<br \/><strong>In Sum:<\/strong><br \/>&nbsp;<br \/>Bazaarvoice is helping to shape social commerce.&nbsp; Being a part of the team during this hectic, exciting, fast-paced phase in our rapidly growing company is not just about having a job; it is about being a part of Bazaarvoice and what we are all about.<br \/><strong>Please spend some time exploring our 5-Stars of Culture before applying.<\/strong><br \/>&nbsp;<br \/><br \/>&nbsp;<\/p><\/p>",
7
+ "perks": null,
8
+ "howto_apply": "PLEASE APPLY AT:<a href=\"\"><a href=\"http:\/\/www.jobvite.com\/j\/?cj=ouXfVfwl&amp;s=authentic+jobs\">http:\/\/www.jobvite.com\/j\/?cj=ouXfVfwl&amp;s=authentic+jobs<\/a>http:\/\/www.jobvite.com\/j\/?cj=ouXfVfwl&amp;s=authentic+jobs<\/a>",
9
+ "post_date": "2009-12-10 10:58:03",
10
+ "category": {
11
+ "id": "3",
12
+ "name": "Interaction Design"
13
+ },
14
+ "type": {
15
+ "id": "1",
16
+ "name": "Full-time"
17
+ },
18
+ "company": {
19
+ "id": "bazaarvoice",
20
+ "name": "Bazaarvoice",
21
+ "url": "http:\/\/bazaarvoice.com",
22
+ "location": {
23
+ "id": "austintxus",
24
+ "name": "Austin, TX, US",
25
+ "city": "Austin",
26
+ "country": "US",
27
+ "lat": "30.2672",
28
+ "lng": "-97.7431",
29
+ "state": "TX"
30
+ }
31
+ }
32
+ },
33
+ {
34
+ "id": "4385",
35
+ "title": "Associate Creative Director",
36
+ "description": "<p><p><strong>Job Description:<\/strong><\/p>\r\n<p>Affiniscape, Inc. is seeking an Associate Creative Director.&nbsp; The Associate Creative Director reports to the Vice President of Services and is responsible for successfully building and leading a design team in the implementation of our customer&rsquo;s online presence, such as web user interface design, page layouts, promotional landing pages, online newsletters, advertising, and many additional online components.&nbsp; The candidate must be a results-driven leader and a self starter with a strong design and technology background.<\/p>\r\n<p><strong>Job Responsibilities:<\/strong><\/p>\r\n<ul>\r\n<li>Provide day-to-day management of the design team.<\/li>\r\n<li>Oversee project delivery - main interface with clients &ndash; evaluate deliverables.<\/li>\r\n<li>Work proactively to address the team&rsquo;s utilization, work-life balance, and career development.<\/li>\r\n<li>Serve as the primary point of contact for business development efforts such as proposals, pre-sales meetings, project estimation\/scoping activities, and resource allocation.<\/li>\r\n<li>Define and document best practices and contribute to company-wide knowledge sharing efforts.<\/li>\r\n<li>Evolve Affiniscape&rsquo;s service offerings from ideation to implementation.<\/li>\r\n<li>Maintain a 25-50% billable utilization rate.<\/li>\r\n<li>Make hiring decisions, mentor employees, and evaluate employee performance.<\/li>\r\n<li>Foster an open and productive atmosphere within the design team.<\/li>\r\n<li>Provide inspiration and motivation to team.<\/li>\r\n<li>Leverage experience, foresight, and analytical skills to efficiently find solutions in completing tasks.<\/li>\r\n<\/ul>\r\n<p><strong>Qualifications:<\/strong><\/p>\r\n<ul>\r\n<li>2+ years industry experience in leading and\/or managing a design team.&nbsp; 5+ years experience in online design at an agency, studio, internal design department, or contractual work. <\/li>\r\n<li>Bachelor's degree in the sciences, engineering, a creative discipline or relative experience is required. <\/li>\r\n<li>Advanced knowledge and skills in HTML, CSS and the ability to hand-code standards based, SEO-friendly code. <\/li>\r\n<li>Advanced knowledge of the full Adobe Creative Web Suite. <\/li>\r\n<li>Knowledge in Flash (ActionScript), .Net, ColdFusion, InDesign, and Acrobat is a plus.&nbsp; <\/li>\r\n<li>Knowledge of JavaScript, DOM scripting and cross-platform browser compatibility restrictions and requirements. <\/li>\r\n<li>Desktop, Rich Internet\/Platform, or Web Applications in Microsoft .NET 3.x, Microsoft Silverlight, Qt Desktop, AJAX, or ColdFusion is a plus. <\/li>\r\n<li>Must be a self-learner with strong creative problem solving abilities.&nbsp; Candidate must stay current with design trends and new technologies. <\/li>\r\n<li>Project management skills are critical including working successfully with changing priorities and risk management. <\/li>\r\n<li>Ability to handle multiple projects simultaneously. <\/li>\r\n<li>Strong written and verbal communication skills - demonstrated experience in working with a team in the design and implementation of solutions <\/li>\r\n<li>A relentless results-driven, self-learner who thrives in a highly dynamic environment <\/li>\r\n<\/ul>\r\n<p><strong>About Us:<\/strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/p>\r\n<p>Affiniscape&rsquo;s products power both the front and back-end of websites and information management systems for associations. Our partners rely on us for website hosting, content and database management, and much more. Affiniscape is a nine year-old company with strong growth and has appeared in the Austin Fast 50 multiple times. Affiniscape maintains a staff of 75 employees, and a client base of more than 1,000 association clients in the U.S., Canada and Australia. We are centrally located in Austin near the 360 bridge.<\/p>\r\n<p><strong>Benefits:<\/strong><\/p>\r\n<p>Competitive salary, PPO, 401k, Stock Option Plan and paid time off.<\/p><\/p>",
37
+ "perks": "Affiniscape offers 15 days of PTO plus 10 recognized holidays. For the right candidate, stock options and a performance bonus will be included in the final compensation package.",
38
+ "howto_apply": "For consideration submit your cover letter, resume, and links to your online portfolio or digital samples online following this link: <a href=\"\"><a href=\"\"><a href=\"http:\/\/www.affiniscape.com\/displayemailforms.cfm?emailformnbr=127378\">http:\/\/www.affiniscape.com\/displayemailforms.cfm?emailformnbr=127378<\/a><\/a><\/a>",
39
+ "post_date": "2009-12-02 12:21:48",
40
+ "category": {
41
+ "id": "4",
42
+ "name": "Graphic Design"
43
+ },
44
+ "type": {
45
+ "id": "1",
46
+ "name": "Full-time"
47
+ },
48
+ "company": {
49
+ "id": "affiniscape",
50
+ "name": "Affiniscape",
51
+ "url": "http:\/\/www.affiniscape.com",
52
+ "location": {
53
+ "id": "austintxus",
54
+ "name": "Austin, TX, US",
55
+ "city": "Austin",
56
+ "country": "US",
57
+ "lat": "30.2672",
58
+ "lng": "-97.7431",
59
+ "state": "TX"
60
+ }
61
+ }
62
+ }],
63
+ "total": 2,
64
+ "perpage": 10,
65
+ "page": 1,
66
+ "pages": 1
67
+ },
68
+ "stat": "ok"
69
+ }
@@ -0,0 +1 @@
1
+ {"types":{"type":[{"id":"1","name":"Full-time"},{"id":"2","name":"Freelance"}]},"stat":"ok"}
@@ -0,0 +1,42 @@
1
+ require 'test/unit'
2
+ require 'pathname'
3
+ require 'rubygems'
4
+
5
+ gem 'shoulda', '>= 2.10.1'
6
+ gem 'jnunemaker-matchy', '0.4.0'
7
+ gem 'mocha', '0.9.4'
8
+ gem 'fakeweb', '>= 1.2.5'
9
+
10
+ require 'shoulda'
11
+ require 'matchy'
12
+ require 'mocha'
13
+ require 'fakeweb'
14
+
15
+
16
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
17
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
18
+ require 'authentic_jobs'
19
+
20
+ FakeWeb.allow_net_connect = false
21
+
22
+ class Test::Unit::TestCase
23
+ end
24
+
25
+ def fixture_file(filename)
26
+ return '' if filename == ''
27
+ file_path = File.expand_path(File.dirname(__FILE__) + '/fixtures/' + filename)
28
+ File.read(file_path)
29
+ end
30
+
31
+
32
+ def stub_get(url, filename, status=nil)
33
+ options = {:body => fixture_file(filename)}
34
+ options.merge!({:status => status}) unless status.nil?
35
+
36
+ FakeWeb.register_uri(:get, url, options)
37
+ end
38
+
39
+ def stub_post(url, filename)
40
+ FakeWeb.register_uri(:post, url, :body => fixture_file(filename))
41
+ end
42
+
@@ -0,0 +1,53 @@
1
+ require 'helper'
2
+
3
+ require 'helper'
4
+
5
+ class TestAuthenticJobs < Test::Unit::TestCase
6
+
7
+ context "when authenticated" do
8
+ setup do
9
+ @client = AuthenticJobs.new('OU812')
10
+ end
11
+
12
+ should "return a list of companies" do
13
+ stub_get("http://www.authenticjobs.com/api/?api_key=OU812&method=aj.jobs.getCompanies", "companies.json")
14
+ companies = @client.companies
15
+ companies.first.name.should == 'Adura Technologies, Inc.'
16
+ companies.first.location.state.should == 'CA'
17
+ end
18
+
19
+ should "return a list of locations" do
20
+ stub_get("http://www.authenticjobs.com/api/?api_key=OU812&method=aj.jobs.getLocations", "locations.json")
21
+ locations = @client.locations
22
+ locations.first.name.should == 'Anywhere in USA'
23
+ locations.first.id.should == 'anywhereinusa'
24
+ end
25
+
26
+ should "return a listings via search" do
27
+ stub_get("http://www.authenticjobs.com/api/?api_key=OU812&method=aj.jobs.search", "search.json")
28
+ listings = @client.search
29
+ listings.first.title.should == 'Interactive Art Designer'
30
+ listings.first.company.name.should == 'Bazaarvoice'
31
+ end
32
+
33
+ should "return a list of job types" do
34
+ stub_get("http://www.authenticjobs.com/api/?api_key=OU812&method=aj.types.getList", "types.json")
35
+ types = @client.types
36
+ types.last.name.should == 'Freelance'
37
+ end
38
+
39
+ should "return a list of job categories" do
40
+ stub_get("http://www.authenticjobs.com/api/?api_key=OU812&method=aj.categories.getList", "categories.json")
41
+ categories = @client.categories
42
+ categories.first.name.should == 'Design'
43
+ end
44
+
45
+ should "handle error codes" do
46
+ stub_get("http://www.authenticjobs.com/api/?api_key=OU812&method=aj.categories.getList", "error.json")
47
+ lambda {@client.categories}.should raise_error(AuthenticJobsError)
48
+ end
49
+
50
+ end
51
+
52
+
53
+ end
metadata ADDED
@@ -0,0 +1,133 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: authentic_jobs
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Wynn Netherland
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-12-19 00:00:00 -06:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: hashie
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ~>
22
+ - !ruby/object:Gem::Version
23
+ version: 0.1.3
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: httparty
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: 0.4.5
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: shoulda
37
+ type: :development
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: 2.10.1
44
+ version:
45
+ - !ruby/object:Gem::Dependency
46
+ name: jnunemaker-matchy
47
+ type: :development
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "="
52
+ - !ruby/object:Gem::Version
53
+ version: 0.4.0
54
+ version:
55
+ - !ruby/object:Gem::Dependency
56
+ name: mocha
57
+ type: :development
58
+ version_requirement:
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - "="
62
+ - !ruby/object:Gem::Version
63
+ version: 0.9.4
64
+ version:
65
+ - !ruby/object:Gem::Dependency
66
+ name: fakeweb
67
+ type: :development
68
+ version_requirement:
69
+ version_requirements: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - ">="
72
+ - !ruby/object:Gem::Version
73
+ version: 1.2.5
74
+ version:
75
+ description: Ruby wrapper for the Authentic Jobs API
76
+ email: wynn.netherland@gmail.com
77
+ executables: []
78
+
79
+ extensions: []
80
+
81
+ extra_rdoc_files:
82
+ - LICENSE
83
+ - README.markdown
84
+ files:
85
+ - .document
86
+ - .gitignore
87
+ - LICENSE
88
+ - README.markdown
89
+ - Rakefile
90
+ - VERSION
91
+ - changelog.markdown
92
+ - examples/search.rb
93
+ - lib/authentic_jobs.rb
94
+ - test/fixtures/categories.json
95
+ - test/fixtures/companies.json
96
+ - test/fixtures/error.json
97
+ - test/fixtures/locations.json
98
+ - test/fixtures/search.json
99
+ - test/fixtures/types.json
100
+ - test/helper.rb
101
+ - test/test_authentic_jobs.rb
102
+ has_rdoc: true
103
+ homepage: http://github.com/pengwynn/authentic_jobs
104
+ licenses: []
105
+
106
+ post_install_message:
107
+ rdoc_options:
108
+ - --charset=UTF-8
109
+ require_paths:
110
+ - lib
111
+ required_ruby_version: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - ">="
114
+ - !ruby/object:Gem::Version
115
+ version: "0"
116
+ version:
117
+ required_rubygems_version: !ruby/object:Gem::Requirement
118
+ requirements:
119
+ - - ">="
120
+ - !ruby/object:Gem::Version
121
+ version: "0"
122
+ version:
123
+ requirements: []
124
+
125
+ rubyforge_project:
126
+ rubygems_version: 1.3.5
127
+ signing_key:
128
+ specification_version: 3
129
+ summary: Ruby wrapper for the Authenic Jobs API
130
+ test_files:
131
+ - test/helper.rb
132
+ - test/test_authentic_jobs.rb
133
+ - examples/search.rb