epilotto_curriculum 0.2.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 62b5079fdf0e7c7a150c4b6c311490e6262edc21
4
- data.tar.gz: 8d7ad5c47fb6ebc1f0244478807bbd7127f971d1
2
+ SHA256:
3
+ metadata.gz: 2e83fa0485558c4902230d1d69aba7d71dcb78b5f5fd21b878dba66c39dfabf6
4
+ data.tar.gz: 76de655026b126bedaa3a1587f1b51258414adaf5a0fd2e89127221706d298a4
5
5
  SHA512:
6
- metadata.gz: '06684fbc712f3077b0b3a50755ec2b3a5b9c205c73072fb7f034b6953d2387754d3e7bb5c53fdcc0a83a863bdbb192766ec0fa1622ec42fff465329185710763'
7
- data.tar.gz: 52e1be0e27bcbf0ac17fe825f939043a50804ff3f772d06eaa4307780885aa096f3fedb3786d198701b2265f2cb1b549832a4fef1ce37bcf6342a03d1f09b4c6
6
+ metadata.gz: 53df52d9d5761b93d1d61d02dd11b1e0fa7ef5685be7fa74532db1a8f93c48fd40b203efbec293aceeb8fb8db2ab523c33e5033e0fe283d4aa2e246c85168728
7
+ data.tar.gz: d28103a63acea5772cd17346b1063e6f6f26294703e2d2ecaa4a824145d0ae6edbfa850ac627c1284d30ed1480524465e94f5bbaad36f69e84d1b88709429402
@@ -30,8 +30,8 @@ Gem::Specification.new do |spec|
30
30
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
31
31
  spec.require_paths = ["lib"]
32
32
 
33
- spec.add_development_dependency "bundler", "~> 1.13"
34
- spec.add_development_dependency "rake", "~> 10.0"
33
+ spec.add_development_dependency "bundler", "~> 2"
34
+ spec.add_development_dependency "rake", "~> 13"
35
35
 
36
36
  spec.add_dependency("term-ansicolor", ">= 1.0.5")
37
37
  end
data/lib/cv.yml CHANGED
@@ -1,96 +1,93 @@
1
1
  name: Enrico Pilotto
2
+ updated_at: 1 February 2022
3
+ about_me: http://rubyonrailspadova.com/
2
4
  Personal Information:
3
5
  Name: Enrico
4
6
  Surname: Pilotto
5
7
  Address: via Marconi 4/3, San Martino di Lupari (PD), 35018, Italy
6
- Nationality: italian
7
- Date of birth: 21 October 1984
8
8
  Sex: M
9
+ Date of birth: 21 October 1984
10
+ Nationality: italian
9
11
  sep:
10
- Email: enrico@megiston.it (best way to contact me)
11
- Website: http://www.pioz.it/
12
+ Email: epilotto@gmx.com (best way to contact me)
13
+ Website: http://rubyonrailspadova.com/
12
14
  Twitter: https://twitter.com/pioz
15
+ Github: https://github.com/pioz
16
+ Work Experience:
17
+ October 2020 - present: |
18
+ <b>Senior web developer</b>
19
+ CardTrader s.r.l.s. - Borgoricco (PD) - Italy
20
+
21
+ After years of working as a developer of web applications of all kinds for various clients of all kinds, I started working at CardTrader, an Amazon style marketplace for the trading of collectibles. With this work I have radically changed the way of working: if before I carried out several projects of more or less defined duration, now I develop only one project. This allows me to gain experience in developing super maintainable code because the code I write today I will have to understand and modify it tomorrow.
22
+
23
+ sep4:
24
+ January 2018 - October 2020: |
25
+ <b>Full stack web developer</b>
26
+ Uqido s.r.l. - Padova - Italy
27
+
28
+ When I began to understand that the work as a freelancer was no longer teaching me that much, I decided to change my path and look for a new opportunity where I can test myself, learn new things and above all compare myself with other experts in the sector. So I ended up working for Uqido. Uqido is a fast growing software house that deals with the development of web applications and virtual reality. I was immediately able to tackle very big and super interesting projects!! Uqido works "as God commands", trying to maintain the highest possible standards in both technology and methodology. I'm learning a lot of new things: for example I started following projects with really huge databases where research is essential and so I experimented with Elasticsearch finding an excellent ally in the most used search engine in the world! Furthermore, I started learning and mastering the AGILE methodology which allowed me to improve my working skills with myself and above all with others. I am very happy with this job!
29
+
30
+ sep3:
31
+ April 2009 – December 2017: |
32
+ <b>Web developer</b>
33
+ Freelancer - Albignasego (PD) - Italy
34
+
35
+ In these years as freelancer I have developed many web applications of all kinds: from classic dynamic business websites to important e-commerce, product configurators, CMS, web management software and even social networks. I have developed projects for large companies such as Radio 105 and Selle Italia. Although I prefer the backend development of an application, I can easily move in the frontend, in fact I have good knowledge of HTML, CSS and Javascript, also experienced in developing interfaces in React.
36
+
37
+ sep2:
38
+ April 2012 – February 2017: |
39
+ <b>Leader backend developer</b>
40
+ Timerepublik S.A. - Albignasego (PD) - Italy / Lugano - Switzerland
41
+
42
+ I have designed and developed the backend of the Timerepublik web application, a social network for the exchange of talents in exchange for time. Created by the idea of two Swiss people, in this community, users can exchange favours and pay with time units that act as a real currency. It was great to work on this project that definitely gave me the chance to increase my Rails mastery, but also to solve many problems that in an application like this one has to deal with. Also I could experience working in real team and know a little about Swiss realities.
43
+
44
+ sep1:
45
+ 2006: |
46
+ <b>Three-months internship</b>
47
+ Digitalblu s.n.c. - San Zenone degli Ezzelini (TV) – Italy
48
+
49
+ I have developed a software in C# (Visual Studio .NET 2005) for handling phone calls through a PBX.
13
50
  Education:
14
- 2003: |
15
- <b>High school degree - Surveyor</b>
16
- I.T.S. Girardi, Cittadella (PD), Italy
17
- sep:
18
51
  2009: |
19
52
  <b>Master degree in Computer Science</b>
20
- University of Study of Padua, Italy
53
+ University of Padua - Italy
21
54
  Final evaluation 107/110
22
55
 
23
- Software Engineering, Artificial Intelligence, Web Development, Programming, Object Oriented Programming, Distributed Systems, Computer Architecture, Networking, Computer Security, Logic, Algebra, Math...
24
- Pubblications:
25
- Title: <b>Compact preference representation in stable marriage problems</b>
26
- Supervisors: prof. Francesca Rossi, prof. Khristen Venable, prof. Livio Colussi
27
- Link: http://www.math.unipd.it/~frossi/adt6-cameraready.pdf
28
- Description: The stable marriage problem has many practical applications in twosided markets like those that assign doctors to hospitals, students to schools, or buyers to vendors. Most algorithms to find stable marriages assume that the participants explicitly expresses a preference ordering. This can be problematic when the number of options is large or has a combinatorial structure. We consider therefore using CP-nets, a compact preference formalism in stable marriage problems. We study the impact of this formalism on the computational complexity of stable marriage procedures, as well as on the properties of the solutions computed by these procedures. We show that it is possible to model preferences compactly without significantly increasing the complexity of stable marriage procedures and whilst maintaining the desirable properties of the matching returned.
29
- Work Experience:
30
- 2006: |
31
- <b>Three-months internship at Digitalblu s.n.c.</b>
32
- Padova, Italy
33
-
34
- I developed a software application in C# (Visual Studio. NET 2005) to handle calls through a PBX.
56
+ Artificial intelligence, Distributed systems, Algorithms 3, Concurrent programming, Formal methods for concurrency, Constraint systems, 3D graphic, Multimedia systems, ...
35
57
  sep1:
36
- September 2009 – present: |
37
- <b>Freelance and founder of Megiston</b>
38
- Albignasego (PD), Italy
58
+ 2006: |
59
+ <b>Degree in Computer Science</b>
60
+ University of Padua - Italy
39
61
 
40
- Founder with Davide Barison, development Ruby on Rails based web solutions and graphic communication. Startup and ecommerce specialization. Developed more than 30 projects. For portfolio synthesis please visit http://www.megiston.it.
62
+ Software engineering, Web development, Programming, Object oriented programming, Algorithms, Computer architecture, Networking, Computer security, Mathematics, Algebra, Logic, ...
41
63
  sep2:
42
- March 2012 – present: |
43
- <b>Software Engineer at Timerepublik</b>
44
- Lugano, Switzerland and Padova, Italy
45
-
46
- Backend programmer
47
- The First Global Time Bank. Timerepublik is a market place that allows you to offer skills (talent) to others members of the community in exchange of time at a one to one ratio. Time becomes the unit of exchange instead of money. Time accumulated can then be exchanged without any restrictions for small favors within the community. Visit http://www.timerepublik.com.
64
+ 2003: |
65
+ <b>High school degree - Surveyor</b>
66
+ I.T.S. Girardi - Cittadella (PD) - Italy
48
67
  Languages:
49
68
  Italian: Mother tongue
50
69
  English: Standard working proficiency studied three years in middle school and five years in high school
51
- Personal skills:
70
+ Job-related skills:
52
71
  Skills: |
53
- * Computer science is my passion
54
- * Interested and intrigued by new technologies, I do not fossilize over a single technology
55
- * Versatile in the use of programming languages and development tools
56
- * Good experience in team work, knowledge of support tools such as trackers, version control system
57
- * Experience in obtaining information from the web: doc, API, blog, forum...
58
- sep:
59
- Operating systems: |
60
- GNU/Linux Debian (very good)
61
- Mac OS X (very good)
62
- MS Windows (poor)
63
- Programming languages: |
64
- C/C++ (very good)
65
- Ruby (very good)
66
- Javascript (very good)
67
- Java (good)
68
- Python (good)
69
- .NET C# (very good)
70
- Ada (base - concurrency)
71
- PHP (poor)
72
- ML (poor)
73
- LaTeX (very good)
74
- Other languages: HTML, CSS, Javascript
75
- DBMS: |
76
- MySQL (very good)
77
- MongoDB (very good)
78
- Redis (very good)
79
- Oracle (poor)
80
- Frameworks: Ruby on Rails (very good)
81
- Other: |
82
- HTML (very good)
83
- CSS (very good)
84
- Apache2 (very good)
85
- Microsoft Visual Studio .NET (good)
86
- Git (very good)
87
- GTK/QT (good)
88
- OpenGL (good)
89
- ...
90
- Interests:
91
- Computer programming: Open source contributor at http://www.github.com/pioz
92
- Cracking: XSS, SQL injection, Brute force scripting, DoS
93
- Video games: World of Warcraft, Hearthstone, Quake 3 arena, Monkey Island, Warcraft III
94
- Additional:
95
- Driving licens: Clean european driving license B
96
- Relationship status: Married to Deborah Stocco
72
+ * I work daily using Ruby on Rails for 8 years, ensuring a great experience of this framework and the Ruby language. Specialized in backend development of web applications. From the solid foundations of my studies to acquire the master degree in computer science at the University of Padua I have integrated my knowledge day after day to improve myself and specialize in the development of web applications. Great knowledge of Unix systems and good ability to work in groups with excellent mastery of versioning systems, especially Git. Currently I work as a freelancer and I am always happy to evaluate new challenges, projects and collaborations of any kind. I'm also part of Megiston, a group of freelancers IT professionals who put together their skills to deal with very important and challenging projects.
73
+ * Skilful in designing and programming web applications and json RESTful based API.
74
+ * Computer science is my passion.
75
+ * Interested and intrigued by new technologies, I do not fossilize over a single technology.
76
+ * Very versatile and able to quickly learn new programming languages and frameworks.
77
+ * I have a good teamwork experience and I like use support tools such as trackers and versioning systems.
78
+ * Problem solving adept.
79
+ sep1:
80
+ Programming languages: C, C++, <b>Ruby</b>, <b>Go</b>, Java, Python, .NET C#, Ada, PHP, LATEX
81
+ Frontend: HTML, CSS, Javascript, HAML, SCSS
82
+ DBMS: MySQL, MongoDB, Redis, SQLite
83
+ Operating systems: GNU/Linux Debian, Mac OS X
84
+ Frameworks: Ruby on Rails
85
+ Software/Libraries: React, Redux, Git, YAML, jQuery, NodeJS, Microsoft Visual Studio .NET, GTK/QT, OpenGL
86
+ Server software: Apache2, Passenger, Thin, Unicorn, Puma, Nginx, Postfix
87
+ sep2:
88
+ Driving license: B
89
+ Additional information:
90
+ Publications: Compact preference representation in stable marriage problems (prof. Francesca Rossi, prof. Khristen Venable, prof. Livio Colussi) - http://www.math.unipd.it/~frossi/adt6-cameraready.pdf
91
+ Open source: |
92
+ * https://www.github.com/pioz
93
+ Relationship status: Married to Deborah Stocco, father of Giuseppe
@@ -1,3 +1,3 @@
1
1
  module EpilottoCurriculum
2
- VERSION = "0.2.0"
2
+ VERSION = '1.0.0'
3
3
  end
@@ -7,12 +7,14 @@ module EpilottoCurriculum
7
7
  def build_from_yaml(yaml_file, width: 80, left_column_max_width_percent: 30)
8
8
  cv = YAML.load_file(yaml_file)
9
9
  name = cv.delete('name')
10
+ updated_at = cv.delete('updated_at')
11
+ about_me = cv.delete('about_me')
10
12
  left_column_max_width = (width * (left_column_max_width_percent/100.0)).round
11
13
  max_paragraph_width = cv.values.map(&:keys).flatten.max{|x,y| x.size <=> y.size}.size
12
14
  lc_w = (max_paragraph_width <= left_column_max_width ? max_paragraph_width : left_column_max_width) + 1
13
15
  rc_w = width - 3 - lc_w
14
16
 
15
- s = [draw_title(name, width)]
17
+ s = [draw_title(name, width, updated_at)]
16
18
  cv.each do |section, data|
17
19
  if section != :name
18
20
  s << draw_section(section, width) # lc_w - 1
@@ -29,7 +31,7 @@ module EpilottoCurriculum
29
31
  end
30
32
  end
31
33
  end
32
- s << ''
34
+ s << draw_about_me(name, about_me, width)
33
35
  return s.join("\n")
34
36
  end
35
37
 
@@ -74,10 +76,11 @@ module EpilottoCurriculum
74
76
  return r.join("\n")
75
77
  end
76
78
 
77
- def draw_title(name, width)
79
+ def draw_title(name, width, updated_at = nil)
78
80
  title = "#{name.upcase}'s curriculum vitæ"
79
- s = "#{title} (last update 1 March 2017)".center(width)
80
- s.gsub!(title, bold(red(title)))
81
+ s = title
82
+ s = "#{title} (last update #{updated_at})" if updated_at
83
+ s = s.center(width).gsub(title, bold(red(title)))
81
84
  return "\n#{s}\n"
82
85
  end
83
86
 
@@ -87,4 +90,11 @@ module EpilottoCurriculum
87
90
  return bold(yellow("#{'─'*2} #{s} #{'─'*lw}"))
88
91
  end
89
92
 
93
+ def draw_about_me(name, link, width)
94
+ if link.present?
95
+ s = "ℹ️ Really more info about #{name} here: #{link}"
96
+ return "\n#{s}\n"
97
+ end
98
+ end
99
+
90
100
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: epilotto_curriculum
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - pioz
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-03-02 00:00:00.000000000 Z
11
+ date: 2022-02-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.13'
19
+ version: '2'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.13'
26
+ version: '2'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '13'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: '13'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: term-ansicolor
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -75,7 +75,7 @@ licenses:
75
75
  - MIT
76
76
  metadata:
77
77
  allowed_push_host: https://rubygems.org
78
- post_install_message:
78
+ post_install_message:
79
79
  rdoc_options: []
80
80
  require_paths:
81
81
  - lib
@@ -90,9 +90,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
90
90
  - !ruby/object:Gem::Version
91
91
  version: '0'
92
92
  requirements: []
93
- rubyforge_project:
94
- rubygems_version: 2.6.8
95
- signing_key:
93
+ rubygems_version: 3.2.29
94
+ signing_key:
96
95
  specification_version: 4
97
96
  summary: Enrico Pilotto's curriculum vitae
98
97
  test_files: []