full_time 1.0.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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: eb67d51839f8dc0d12eeebac48a6b3d1e23f728ba25b48e40bfb0f3d9e6a8ccb
4
+ data.tar.gz: 61f44cf8a45e8eeb521316db91cc28a86af798764dec4f540c06795544ca6b7a
5
+ SHA512:
6
+ metadata.gz: 8eb16d731b691979763629415f29546ed6246afab075e1723da0fe324a23b09e46279d46e72b2248cec1d4e0a195c5b4e86ab7eff4ca88e3dc9b098617719244
7
+ data.tar.gz: 2a03e3e143b73eb7457cb6dbf645aa3d4c45ce10ccc4b7f367629ebb24689ba70ff884fa7d692d29fa4f0ab2479afac2577e5c3d5912bd9c428cff8ef332b728
data/.gitignore ADDED
@@ -0,0 +1,3 @@
1
+ /.bundle/
2
+ /Gemfile.lock
3
+ /*.sublime-*
data/.rspec ADDED
@@ -0,0 +1,3 @@
1
+ --format documentation
2
+ --color
3
+ --require spec_helper
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in full_time.gemspec
4
+ gemspec
data/README.md ADDED
@@ -0,0 +1,318 @@
1
+ # FullTime
2
+
3
+ Handle your CV like a pro
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ ```ruby
10
+ gem 'full_time'
11
+ ```
12
+
13
+ And then execute:
14
+
15
+ $ bundle
16
+
17
+ Or install it yourself as:
18
+
19
+ $ gem install full_time
20
+
21
+ ## Usage
22
+
23
+ ```
24
+ FullTime.profile do
25
+ name 'Andrew Babichev'
26
+ email 'andrew.babichev@gmail.com'
27
+ homepage 'http://andrewbabichev.com'
28
+ github 'https://github.com/Tensho'
29
+ location 'Kiev, Ukraine'
30
+
31
+ employment do
32
+ company 'Intetics' do
33
+ homepage 'http://intetics.com'
34
+
35
+ project 'Resolver', start_date: 'January 2016', end_date: 'Current' do
36
+ homepage 'https://resolver.co.uk'
37
+ description 'Free online tool for complaints and claims'
38
+ title 'Senior Software Engineer & Team Lead'
39
+
40
+ technologies do
41
+ • 'Primary Languages: Ruby, SQL'
42
+ • 'Secondary Languages: Coffees/JS, Slim/HAML/HTML5, Elixir'
43
+ • 'Web Frontend Frameworks: AngularJS'
44
+ • 'Web Backend Frameworks: Rails, Grape, Rocket Pants'
45
+ • 'Background Processors: Sidekiq, Sneakers'
46
+ • 'Databases: MySQL, DynamoDB, MongoDB, Postgres, Redis, Memcached, Neo4j, AuroraDB'
47
+ • 'Queues/Message Brokers: Redis, RabbitMQ'
48
+ • 'AWS: EC2, ECS, EBS, ELB, Route53, RDS, S3, CloudFront, DynamoDB, VPC, IAM, ElastiCache'
49
+ • 'Configuration Management: Puppet'
50
+ • 'Web Servers: Nginx'
51
+ • 'OS: Ubuntu, Alpine, MacOS'
52
+ • 'CMS: Refinery'
53
+ end
54
+
55
+ achievements do
56
+ • 'Setup test framework and covered with specs existing and new features'
57
+ • 'Deployment scripts support and enhancement'
58
+ • 'Setup backup model for MySQL to AWS S3 and Rackspace Cloud Files'
59
+ • 'Developed credit card number concealer'
60
+ • "Contributed filter parameters config fixes to 'rails' and 'dookeeper' gems in the sake of application"
61
+ • 'Setup and integrated web application with IBM Bluemix cognitive services AlchemyAPI, Watson and Tone Analyzer'
62
+ • 'Developed and implemented HTML email sanitizers (loofah scrubbers)'
63
+ • 'Consolidated MailChimp/Mandrill templates workflow, introduced dynamic content'
64
+ • 'Setup CDN (AWS CloudFront distributions)'
65
+ • 'Setup CI/CD (GitHub, CircleCI, Slack)'
66
+ • 'Integrated web application with secure (TLS) email server'
67
+ • 'Internationalized and localized web application'
68
+ • 'Adjusted Puppet manifests for better reliability of infrastructure configuration'
69
+ • 'Adjusted custom Ruby scripts for AWS EC2 instances provisioning'
70
+ • 'Specified Puppet node definitions for new services'
71
+ • "Contributed typecasted attributes to 'mongoid' gem in the sake of application"
72
+ • 'Handled emoticons in MySQL'
73
+ • 'Introduced asynchronous event sourcing with RabbitMQ'
74
+ • 'Developed Mailer microservice'
75
+ • 'Developed Admin microservice'
76
+ • "Contributed re-enabled cap task invocation at 'capistrano', 'capistrano-sidekiq' and 'capistrano-sneakers' gems in the sake of application"
77
+ • "Contributed settings and options merge to 'mandrill_dm' gem in the sake of application"
78
+ • 'Introduced Docker'
79
+ • 'Interviewed and mentored other developers'
80
+ • 'Introduced new developers to the application'
81
+ • 'Spread out Agile principles and Kanban methodology to the team'
82
+ end
83
+ end
84
+ end
85
+
86
+ company 'GlobalLogic' do
87
+ homepage 'http://globallogic.com'
88
+
89
+ project 'Advanced creative platform for online advertising', start_date: 'November 2014', end_date: 'January 2016' do
90
+ description 'Advanced creative platform for online advertising, which allows you to automate processes related to creative services. It supports both platforms – desktop and mobile.'
91
+ title 'Full-stack Rails developer'
92
+
93
+ technologies do
94
+ • 'Ruby'
95
+ • 'Rails'
96
+ • 'MySQL'
97
+ • 'Postgres'
98
+ • 'Slim/HTML5'
99
+ • 'Coffeescript/Javascript'
100
+ • 'SASS/CSS'
101
+ • 'AWS (CloudFormation, EC2, EBS, RDS, S3, CloudFront, SES, IAM)'
102
+ • 'Ansible'
103
+ • 'Docker'
104
+ end
105
+
106
+ achievements do
107
+ • 'Setup test framework and covered with specs existing and new features'
108
+ • 'Performed development operations – infrastructure setup, configuration and application deployment'
109
+ • 'Delivered first and launched subsequent production releases intime'
110
+ • 'Developed bulk import/export of the records from/to excel spreadsheet'
111
+ • 'Interviewed and mentored other developers'
112
+ • 'Introduced new developers to the application'
113
+ • "Contributed to 'cocoon' gem in the sake of application"
114
+ • 'Refactored advertisement showing mechanics'
115
+ • 'Developed application multitenancy'
116
+ • 'Migrated from MySQL to Postgres'
117
+ • 'Researched solutions for the cross-browser issues'
118
+ • 'Refactored event tracking system for existing advertisements'
119
+ • 'Introduced video player to the advertisements'
120
+ • 'Spread out Agile principles and SCRUM methodology to the team'
121
+ end
122
+ end
123
+ end
124
+
125
+ company 'DataArt' do
126
+ homepage 'http://dataart.com'
127
+
128
+ project 'Online advertising aggregator', start_date: 'July 2014', end_date: 'November 2014' do
129
+ description 'Online advertising aggregator from different services, particularly Google Adwords and Bing Ads, which provides data to the end user in the target scope. The application was divided into several parts: Rails application for the user management purposes, Ember application (frontend) for the users with dashboard/charts/statistics, Rails API application (backend) to support frontend, MapReduce cluster for the data import and analysis from advertising services.'
130
+ title 'Backend Rails developer'
131
+
132
+ technologies do
133
+ • 'Ruby'
134
+ • 'Rails'
135
+ • 'Postgres'
136
+ • 'AWS (EMR, EC2, RDS, S3)'
137
+ • 'Google Analytics'
138
+ • 'Google DFP'
139
+ • 'Bing Ads'
140
+ end
141
+
142
+ achievements do
143
+ • 'Setup test framework and covered with specs existing and new features'
144
+ • 'Figured out detailed requirements'
145
+ • 'Developed Hadoop MapReduce streaming steps'
146
+ • 'Enhanced API according to frequently changing business logic'
147
+ • 'Implemented 3rd party integrations'
148
+ • 'Delivered first production releases intime'
149
+ • 'Adopted Agile principles and Kanban methodology'
150
+ end
151
+ end
152
+ end
153
+
154
+ company 'Anadea Inc' do
155
+ homepage 'http://anadea.info'
156
+
157
+ project 'NowShop', start_date: 'October 2012', end_date: 'July 2014' do
158
+ homepage 'http://nowshop.com/'
159
+ description 'NowShop delivers integrated web-shops for news sites. The platform includes over 1.000.000 products in all categories, full payment solution as well as 3rd party delivery solution.'
160
+ title 'Backend Rails developer'
161
+
162
+ technologies do
163
+ • 'Ruby'
164
+ • 'Rails'
165
+ • 'Postgres'
166
+ • 'XML'
167
+ • 'XML Scheme'
168
+ • 'HTML'
169
+ end
170
+
171
+ achievements do
172
+ • 'Developed mechanism for obtaining XML data feeds from the retailers in different countries (Denmark, Norway, Sweden, United Kingdom), validation, parsing and multithread saving to the database'
173
+ • 'Implemented XML import optimizations like digests, queries reduction, ActiveRecord refusal in favor of SQL'
174
+ • 'Supported the time task scheduler for the periodic tasks with logging and email notification'
175
+ • 'Developed HTML scrappers for the retailer sites to grab products info'
176
+ • 'Covered with specs existing and new features in TDD style'
177
+ • 'Sustained shop UI uptodate the backend side'
178
+ • 'Adopted Agile principles and XP methodology'
179
+ end
180
+ end
181
+ end
182
+
183
+ company 'Donetskoblgaz PLC' do
184
+ # description 'Donetskoblgaz is the regional gas transfer monopolist'
185
+
186
+ project 'Internal accounting system', start_date: 'July 2008', end_date: 'October 2012' do
187
+ homepage ''
188
+ description ''
189
+ title 'Software Engineer'
190
+
191
+ technologies do
192
+ • 'Perl'
193
+ • 'MS SQL Server'
194
+ • 'Oracle'
195
+ • 'XML'
196
+ • 'DTD'
197
+ • 'DBF'
198
+ • 'HTML'
199
+ • 'Excel'
200
+ end
201
+
202
+ achievements do
203
+ • 'Figured out detailed requirements, evaluated system program needs, wrote and maintained program code to meet system requirements, system designs and technical specifications'
204
+ • 'Maintained inner accounting software package (client-server model)'
205
+ • 'Developed web-services to provide the customers ability to view the balance, edit counter values, make payments'
206
+ • 'Improved software for the data exchange between organization and banks'
207
+ • 'Administrated ERP Parus 8.2 database, wrote technical and user documentation, enterprise standards'
208
+ • 'Assumed a leadership role in cooperate work, inspired and motivated other employees'
209
+ • 'Adopted Waterfall methodology'
210
+ end
211
+ end
212
+ end
213
+ end
214
+
215
+ education do
216
+ university 'Donetsk National Technical University', start_date: '2003', end_date: '2008' do
217
+ title 'Specialist System Programming'
218
+ end
219
+ end
220
+
221
+ certification do
222
+ course do
223
+ title 'Web Application Architectures'
224
+ company 'Coursera'
225
+ homepage 'https://www.coursera.org/course/webapplications'
226
+ end
227
+
228
+ course do
229
+ title 'Algorithms: Design and Analysis, Part 1'
230
+ company 'Coursera'
231
+ homepage 'https://www.coursera.org/course/algo'
232
+ end
233
+
234
+ course do
235
+ title 'Gamification'
236
+ company 'Coursera'
237
+ homepage 'https://www.coursera.org/course/Gamification'
238
+ end
239
+
240
+ course do
241
+ title 'Functional Programming Principles in Scala'
242
+ company 'Coursera'
243
+ homepage 'https://www.coursera.org/course/progfun'
244
+ end
245
+ end
246
+
247
+ interests do
248
+ • 'Software Architecture'
249
+ • 'Web Technologies'
250
+ • 'Arduino'
251
+ • 'Cooking'
252
+ • 'Tea'
253
+ • 'Chess'
254
+ • 'Go'
255
+ • 'Japan'
256
+ end
257
+ end
258
+ ```
259
+
260
+ The next command converts your CV to HTML:
261
+
262
+ ```
263
+ $ full_time
264
+ ```
265
+
266
+ For the more extensive example checkout `example/cv.rb`.
267
+
268
+ ## High-Level Structure
269
+
270
+ ```
271
+ * Profile
272
+ * Employment
273
+ * Company
274
+ * Project
275
+ * Education
276
+ * University
277
+ * Certification
278
+ * Course
279
+ * Interests
280
+ ```
281
+
282
+ ## Development
283
+
284
+ After checking out the repo, run `bin/setup` to install dependencies. Then, run `bin/rake` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
285
+
286
+ To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
287
+
288
+ ## TODO
289
+
290
+ * Allow to pass CV and template file paths to executable, like `$full_time cv.rb template.html.erb`
291
+ * Present any collection with a list in the template
292
+ * Extend "Certification" with `expire_date`, `license_number`, `url`, `authority` (like in LinkedIn) + Adjust README "High-Level Structure"
293
+ ```
294
+ certificate do
295
+ title 'AWS Certified Developer - Associate (DVA)'
296
+ authority 'Amazon Web Services'
297
+ expire_date 'March 2020'
298
+ license_number 'S4BBW3CKBBQQQM94'
299
+ homepage 'https://aws.amazon.com/certification/certified-developer-associate'
300
+ url 'https://www.certmetrics.com/amazon/public/badge.aspx?i=2&t=c&d=2018-03-01&ci=AWS00435488'
301
+ end
302
+ ```
303
+ * Add "Intro"
304
+ ```
305
+ intro <<-INTRO
306
+ Software Engineer
307
+ 10 years in IT industry
308
+ Engineering, development, delivery
309
+ INTRO
310
+ ```
311
+ * Add "Services: Mandrill" to "Skills"
312
+ * Open source
313
+ * Add the different template engines, e.g. render to `pdf`, `doc`, etc
314
+
315
+ ## Contributing
316
+
317
+ Bug reports and pull requests are welcome on GitHub at https://github.com/Tensho/full_time.
318
+
data/Rakefile ADDED
@@ -0,0 +1,6 @@
1
+ require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task default: :spec
data/bin/console ADDED
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "bundler/setup"
4
+ require "full_time"
5
+
6
+ # You can add fixtures and/or initialization code here to make experimenting
7
+ # with your gem easier. You can also use a different console, if you like.
8
+
9
+ # (If you use this, don't forget to add pry to your Gemfile!)
10
+ # require "pry"
11
+ # Pry.start
12
+
13
+ require "irb"
14
+ IRB.start
data/bin/fulltime ADDED
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env ruby
2
+ require 'tilt'
3
+ require '../example/cv'
4
+
5
+ template = Tilt.new("../example/template.html.erb")
6
+
7
+ html = template.render(@profile)
8
+
9
+ File.open("../example/cv.html", 'w') do |file|
10
+ file.write(html)
11
+ end
data/bin/rake ADDED
@@ -0,0 +1,17 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+ #
4
+ # This file was generated by Bundler.
5
+ #
6
+ # The application 'rake' is installed as part of a gem, and
7
+ # this file is here to facilitate running it.
8
+ #
9
+
10
+ require "pathname"
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
12
+ Pathname.new(__FILE__).realpath)
13
+
14
+ require "rubygems"
15
+ require "bundler/setup"
16
+
17
+ load Gem.bin_path("rake", "rake")
data/bin/rspec ADDED
@@ -0,0 +1,17 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+ #
4
+ # This file was generated by Bundler.
5
+ #
6
+ # The application 'rspec' is installed as part of a gem, and
7
+ # this file is here to facilitate running it.
8
+ #
9
+
10
+ require "pathname"
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
12
+ Pathname.new(__FILE__).realpath)
13
+
14
+ require "rubygems"
15
+ require "bundler/setup"
16
+
17
+ load Gem.bin_path("rspec-core", "rspec")
data/bin/setup ADDED
@@ -0,0 +1,7 @@
1
+ #!/bin/bash
2
+ set -euo pipefail
3
+ IFS=$'\n\t'
4
+
5
+ bundle install
6
+
7
+ # Do any other automated setup that you need to do here