Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/timqian/hacker-job-trends
Play with hackernews' "who is hiring"
https://github.com/timqian/hacker-job-trends
hacker hackernews job nodejs
Last synced: 6 days ago
JSON representation
Play with hackernews' "who is hiring"
- Host: GitHub
- URL: https://github.com/timqian/hacker-job-trends
- Owner: timqian
- License: mit
- Created: 2018-07-04T02:15:55.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-07T20:41:12.000Z (almost 2 years ago)
- Last Synced: 2024-10-03T14:06:36.861Z (about 1 month ago)
- Topics: hacker, hackernews, job, nodejs
- Language: JavaScript
- Homepage: http://timqian.com/hacker-job-trends/
- Size: 74.4 MB
- Stars: 749
- Watchers: 12
- Forks: 37
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-list - hacker-job-trends
README
> npm install -g hacker-job-trends
## hacker-job-trends
As we know, an "Ask HN: Who is Hiring?"([example](https://news.ycombinator.com/item?id=17442187)) post will occur at hackernews every month. It is interesting to scan the post because it helps you to get a feeling about what is happening in tec related business. This repo aims to help you keep up with how the tec job requirements/used tools/kind/... evolve.
## How
1. Get historical "Who is hiring" posts on HackerNews
2. Analyse the keyword count history## Examples
#### vue trends:
```bash
$ hjt vue + vuejs6.55 ┼ ╭╮
6.11 ┤ ╭╮ ╭╮ │╰╮
5.68 ┤ ││ ╭╮││ │ │
5.24 ┤ ││ ╭╯│││╭╯ ╰╮ ╭╮
4.80 ┤ ╭╯│╭╯ ││││ ╰──╯╰╮
4.37 ┤ │ ││ ││││ ╰
3.93 ┤ ╭╮ ╭─╯ ╰╯ ╰╯││
3.49 ┤ ││ ╭╯ ╰╯
3.06 ┤ ││ │
2.62 ┤ ││ ╭─╮│
2.18 ┤ ╭╮ ╭╮ ││╭╯ ╰╯
1.75 ┤ ╭╮ │╰╮│╰─╯╰╯
1.31 ┤ ╭╮ ││ │ ││
0.87 ┼╮ ││ ╭╮ ╭╮ ││ ╭╮ ╭╮ ╭╯ ││
0.44 ┤│ │╰╮ │╰╮ ╭╮ ││ ╭╮ ╭─╮ ╭╮ ╭──╮││ ╭╮ ││ ╭─╮│╰─╮╭────╯ ╰╯
0.00 ┤╰───╯ ╰──╯ ╰──────╯╰──╯╰────╯╰────╯ ╰─╯╰─╯ ╰╯╰───╯╰──╯╰─╯ ╰╯ ╰╯
:
┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──
2011-01 2012-01 2013-01 2014-01 2015-01 2016-01 2017-01 2018-01 2019-01 2020-01```
#### react trends:
```bash
$ hjt react54.71 ┼ ╭
51.07 ┤ │
47.42 ┤ ╭─╮ ╭╯
43.77 ┤ ╭╮╭─╮ │ ╰╮ ╭╯
40.12 ┤ ╭╮ ╭╮│╰╯ │╭╮╭╯ ╰─╯
36.48 ┤ ╭╮│╰────╯╰╯ ╰╯╰╯
32.83 ┤ ╭╮╭╮│╰╯
29.18 ┤ ╭╮ ╭─╯╰╯╰╯
25.53 ┤ ╭╮╭───╯╰─╯
21.89 ┤ ╭─╯╰╯
18.24 ┤ ╭╮╭──╯
14.59 ┤ ╭╮ ╭╯╰╯
10.94 ┤ ╭─╯╰─╯
7.30 ┤ ╭╮╭─╯
3.65 ┤ ╭─╮╭────╯╰╯
0.00 ┼──────────────────────────────────────╯ ╰╯
:
┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──
2011-01 2012-01 2013-01 2014-01 2015-01 2016-01 2017-01 2018-01 2019-01 2020-01```
#### angular trends:
```bash
$ hjt angular + angularjs69.86 ┼ ╭╮
65.20 ┤ ││
60.54 ┤ ││
55.89 ┤ ││
51.23 ┤ ││ ╭╮
46.57 ┤ ││ ││
41.91 ┤ ││ │╰╮
37.26 ┤ │╰╮ │ │ ╭╮
32.60 ┤ │ ╰╮ │ │ ╭╯│
27.94 ┤ ╭╯ ╰──╮│ ╰──╯ ╰╮
23.29 ┤ │ ╰╯ │ ╭─╮
18.63 ┤ ╭─╯ ╰──╯ │ ╭╮╭─╮ ╭╮ ╭──╮
13.97 ┤ ╭╯ ╰─╯╰╯ ╰──╯╰─╯ ╰─╮╭╮ ╭╮ ╭─╮ ╭╮╭╮
9.31 ┤ ╭─╯ ╰╯╰─╯╰──╯ ╰─╯╰╯╰───────╮╭──╮╭────
4.66 ┤ ╭─╯ ╰╯ ╰╯
0.00 ┼──────────────────────────╯
:
┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──
2011-01 2012-01 2013-01 2014-01 2015-01 2016-01 2017-01 2018-01 2019-01 2020-01```
#### javascript trends:
```bash
$ hjt javascript + js61.17 ┤ ╭╮
57.92 ┤ ││
54.68 ┤ ││
51.43 ┤ ││
48.19 ┤ ╭╮ ╭╮ ││ ╭╮
44.95 ┤ ││╭─╮ ││ ╭╮│╰╮││
41.70 ┤ │││ │ │╰╮ │╰╯ │││
38.46 ┤ ╭╮ │╰╯ │ ╭╮│ ╰──╮│ ╰╯╰╮
35.21 ┤ ╭╮ ╭╯│ ╭╮╭╮ │ │╭╯││ ╰╯ ╰╮
31.97 ┤ ╭╮ ││ │ │╭╯╰╯╰──╯ ╰╯ ╰╯ │ ╭╮╭╮ ╭──╮
28.72 ┤ ╭╮││ ╭─╯│╭╯ ╰╯ │╭╯╰╯╰╮╭────╯ │ ╭╮╭╮
25.48 ┤ │╰╯│ ╭╯ ╰╯ ╰╯ ╰╯ ╰──╯╰╯│╭────╮ ╭──────╮╭╮╭╮
22.23 ┤ ╭──╯ ╰──╯ ╰╯ ╰─╯ ╰╯╰╯│ ╭╮ ╭╮╭╮ ╭╮
18.99 ┤╭╮│ ╰──╯╰─╯╰╯╰───╯╰
15.74 ┤│╰╯
12.50 ┼╯
:
┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──
2011-01 2012-01 2013-01 2014-01 2015-01 2016-01 2017-01 2018-01 2019-01 2020-01```
#### nodejs trends:
```bash
$ hjt nodejs + node.js18.02 ┼ ╭╮
16.82 ┤ ││
15.62 ┤ ││
14.42 ┤ ││ ╭╮
13.22 ┤ ╭╮ ││╭╮ ╭╯│ ╭╮ ╭╮
12.01 ┤ ││ ╭╮ │╰╯╰╮│ ╰╮ ││ ╭╮ ╭╮╭╮ │╰╮
10.81 ┤ ││ │╰╮│ ││ │ │╰╮╭╯│ ╭╮ ╭╮ ╭╮ ╭╯│││ │ │ ╭╮ ╭
9.61 ┤ ╭╮ ││ ╭─╯ ││ ╰╯ ╰─╮│ ╰╯ │╭╮ ╭╮╭╯│╭─╯╰╮╭╯│╭╮│ ││╰─╯ ╰╮││ ╭─╮ ╭─╮ ╭╯
8.41 ┤ ╭╮ ╭──╮ ╭╮ ╭╮││ ╭─╯│ ╭╮ │ ╰╯ ╰╯ ╰╯│╭─╯╰╯ ╰╯ ╰╯ ╰╯╰╯ ╰╯ ╰╯╰──╯ ╰─╯ ╰╮ │
7.21 ┤ ││ ╭─╯ ╰─╮ ││ ╭╯│││╭─╯ ╰─╯│ │ ││ ╰───╯
6.01 ┤ │╰─╯ ╰─╯╰─╯ ╰╯╰╯ ╰╮│ ╰╯
4.81 ┤ ╭─╯ ││
3.60 ┤ ╭──╯ ╰╯
2.40 ┤╭╯
1.20 ┤│
0.00 ┼╯
:
┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──
2011-01 2012-01 2013-01 2014-01 2015-01 2016-01 2017-01 2018-01 2019-01 2020-01```
#### remote trends:
```bash
$ hjt remote - not remote - no remote58.01 ┤ ╭─
54.83 ┤ ╭╯
51.64 ┤ ╭╮ ╭╯
48.45 ┤ ╭╮ │╰╮│
45.26 ┤ ╭╯│ ╭╯ ╰╯
42.07 ┤ ╭╮│ │ ╭─╮╭╯
38.89 ┤ ╭╮ ╭╮╭╯││ ╰─╯ ╰╯
35.70 ┤ ╭╮ ╭╮ ╭╮ ╭╮ ╭─╯╰──╯╰╯ ╰╯
32.51 ┤ ╭╮ ╭╮╭╮ ││╭╮││ ╭╮╭╯│ ││ │
29.32 ┤ ││ ╭╮ ╭─╮│╰╯│ │╰╯││╰╮╭─╯││ │╭╯│╭╯
26.13 ┤╭╯│ ╭╮ │╰╮│ ││ │ ╭─╮╭╮ ╭╮╭────╯ ╰╯ ╰╯ ╰╯ ╰╯ ╰╯
22.95 ┤│ │╭╮ ╭─╮ ╭╮││ ╭─╮╭╮│ ╰╯ ╰╯ ╰─╯ ╰╯╰╮│╰╯
19.76 ┤│ │││ ╭╮ ╭╯ ╰╮ ╭╮╭─╯││╰─╮ ╭╯ ││╰╯ ╰╯
16.57 ┼╯ │││ │╰╮ │ ╰─╮│╰╯ ╰╯ ╰─╯ ╰╯
13.38 ┤ ││╰──╯ │╭╯ ││
10.19 ┤ ╰╯ ╰╯ ╰╯
:
┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──
2011-01 2012-01 2013-01 2014-01 2015-01 2016-01 2017-01 2018-01 2019-01 2020-01```
#### aws trends:
```bash
$ hjt aws30.09 ┼ ╭╮
28.08 ┤ ╭╯│ ╭╮
26.08 ┤ │ │ ││╭
24.07 ┤ ╭╮ ╭─╯ ╰─╯╰╯
22.06 ┤ ╭╮ ╭──╮╭╯╰─╮ ╭╯
20.06 ┤ ╭╮ ╭─╮╭╮ ╭─╯╰╮╭╯ ╰╯ ╰─╯
18.05 ┤ ╭╮ ╭╮││ │ ││╰─╮ │ ╰╯
16.05 ┤ ╭╮ ││ ╭╮ ╭╮ ╭╮ ╭╮│╰╯╰─╯ ╰╯ ╰─╯
14.04 ┤ ││ ╭╮╭──╯╰─╮╭─╯╰──╯╰╮╭╯╰─╯╰╯
12.04 ┼╮ ╭╮ ╭╮ ││ ╭╮ │╰╯ ╰╯ ╰╯
10.03 ┤│ ╭╮ ││ ││ ╭╮ ╭╯│╭╮ │╰─╯
8.02 ┤│ │╰╮ ││ ││ ││ ╭╮ ╭╮ ╭╮ ╭╯ ╰╯╰─╮╭──╮│
6.02 ┤│ ╭╯ │ │╰╮│╰─╯╰╮│╰╮│╰─╯╰─╯ ╰╯ ╰╯
4.01 ┤│ │ ╰─╯ ╰╯ ╰╯ ╰╯
2.01 ┤╰╮╭╯
0.00 ┤ ╰╯
:
┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──
2011-01 2012-01 2013-01 2014-01 2015-01 2016-01 2017-01 2018-01 2019-01 2020-01```
#### blockchain trends:
```bash
$ hjt ethereum + blockchain + bitcoin + solidity + smart contract15.33 ┼ ╭╮
14.30 ┤ ││
13.28 ┤ ╭─╮ ╭╯╰╮
12.26 ┤ │ │ │ │
11.24 ┤ ╭╮│ ╰╮╭╮│ │ ╭╮
10.22 ┤ │││ ╰╯╰╯ ╰─╯│
9.20 ┤ │╰╯ ╰╮ ╭╮ ╭
8.17 ┤ │ │ ││ ╭─╮│
7.15 ┤ │ │╭─╯╰╮│ ╰╯
6.13 ┤ │ ││ ╰╯
5.11 ┤ ╭╮ │ ╰╯
4.09 ┤ ╭╮ ╭─╮ ╭╯│ ╭─╮│
3.07 ┤ ╭╮ │╰─╮ │ │╭╯ ╰─╯ ││
2.04 ┤ ╭╮ │╰╮╭╯ │ ╭─╮╭╮ ╭╮ ╭╮ │ ╰╯ ││
1.02 ┤ ╭╮ ╭─╯╰╮ ╭─╯ ╰╯ ╰──╮╭╯ ╰╯╰───╯╰╮╭╮╭─╯╰─╯ ╰╯
0.00 ┼───────────────────╯╰────────╯ ╰──╯ ╰╯ ╰╯╰╯
:
┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──
2011-01 2012-01 2013-01 2014-01 2015-01 2016-01 2017-01 2018-01 2019-01 2020-01```
#### java trends:
```bash
$ hjt java - javascript33.33 ┤ ╭╮
31.79 ┤ ││
30.24 ┤ ││ ╭╮
28.69 ┤ ││ ││
27.14 ┤ ││ ││
25.60 ┤ ││ ││
24.05 ┤ ││ ││ ╭╮
22.50 ┤ ││ ││ ││ ╭╮ ╭╮ ╭╮ ╭╮ ╭╮
20.96 ┤ ││ ││╭╮ ││ ││╭╮╭╮││ ││ ││ ││
19.41 ┤ ││ ╭╮││││ ││ ││││││││ ││ ││ ╭──╯│
17.86 ┤ ││ ╭╮ ││││││ ╭╮ ││ ╭╯││╰╯│││ ││ ╭╮││ │ │╭╮╭╮ ╭╮ ╭╮
16.32 ┤ ││╭╮ ││╭╯│││││ ││ ││╭╯ ╰╯ ││╰╮│╰╮││││╭╯ ││││╰╮ ││ ╭╮ ││ ╭╮ ╭─╮
14.77 ┤ ││││ │││ ╰╯││╰╮│╰─╯││ ││ ││ ││││╰╯ ╰╯╰╯ │╭╯│╭╮ ││ ╭╮╭╮ ╭╮ ╭─╯│╭╮╭╯╰─╯ │╭─────╮ ╭───╮ ╭╮
13.22 ┼╮│╰╯│╭─╯╰╯ ╰╯ ││ ╰╯ ╰╯ ╰╯ ││╰╯ ╰╯ ││╰─╯╰╮ │╰╯╰╮│╰──╯ ╰╯╰╯ ╰╯ ╰╮╭──╯ ╰╮╭╯│╭
11.67 ┤╰╯ ││ ╰╯ ││ ╰╯ │╭╯ ╰╯ ╰╯ ╰╯ ╰╯
10.13 ┤ ╰╯ ╰╯ ╰╯
:
┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──
2011-01 2012-01 2013-01 2014-01 2015-01 2016-01 2017-01 2018-01 2019-01 2020-01```
#### python trends:
```bash
$ hjt python46.39 ┤ ╭╮
43.74 ┤ ││
41.10 ┤ ╭╮││ ╭╮
38.45 ┤ ││││ ││
35.80 ┤ ╭╮ ╭╮ │╰╯╰─╯╰─╮ ╭╮
33.15 ┤ ╭╮ ╭╮╭╮ ││ │╰╮ │ │ ╭──╮ ╭╮╭───╮ ╭╯│
30.50 ┤ ╭╮ ╭╮││╭╯╰╯│ ╭╮││╭──╮│ ╰─╮│ │ ╭╮ ╭╮ ╭─╮│ ╰────╯││ ╰╮╭─╯ ╰─────
27.85 ┤ ││ ╭╮╭╯││││ ╰╮╭╮│╰╯││ ╰╯ ╰╯ ╰╮╭─╮╭╯╰╮ ╭╮ ╭──╮╭╯╰───╯ ││ ╰╯ ╰╯
25.21 ┤ ││ ╭╮╭╯││ ╰╯╰╯ ││╰╯ ││ ╰╯ ╰╯ │╭╯╰╮╭──╯ ╰╯ ╰╯
22.56 ┼╮ ╭╮ ││ │││ ││ ││ ╰╯ ╰╯ ╰╯
19.91 ┤│ │╰╮╭╮││ │││ ╰╯ ╰╯
17.26 ┤│ │ ││││╰╮│││
14.61 ┤╰╮│ ╰╯╰╯ ╰╯╰╯
11.96 ┤ ││
9.32 ┤ ││
6.67 ┤ ╰╯
:
┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──
2011-01 2012-01 2013-01 2014-01 2015-01 2016-01 2017-01 2018-01 2019-01 2020-01```
#### golang trends:
```bash
$ hjt golang6.10 ┼ ╭╮
5.69 ┤ ╭╮ ╭╮ ╭╮│╰╮ ╭╮
5.28 ┤ ││╭╮ ││ │││ ╰╮╭╯╰
4.88 ┤ ╭╮ ││││ │╰──╯││ ╰╯
4.47 ┤ ││ ╭╮ ╭╮ ╭╯│││╭╯ ╰╯
4.07 ┤ ╭╮ ││╭╯│╭─╮ ╭╮ ╭╮││ │ ││││
3.66 ┤ ││ ╭╯││ ╰╯ │ ╭╮ │╰╮ ││││ │ ╰╯╰╯
3.25 ┤ ││ │ ╰╯ │ ││╭╯ ╰╮│││╰╮│
2.85 ┤ ╭╮│╰╮ ╭╯ ╰─╯╰╯ ││╰╯ ╰╯
2.44 ┤ ╭─╮ │╰╯ │╭╯ ╰╯
2.03 ┤ │ │ │ ││
1.63 ┤ │ ╰╮╭╮ ╭╮ ╭╮ ╭╮╭╯ ╰╯
1.22 ┤ ╭╮ │ ╰╯│╭╮╭╮││ │╰─╯││
0.81 ┤ │╰╮ │ ╰╯╰╯╰╯│╭╯ ╰╯
0.41 ┤ ╭╮ ╭╮│ │ ╭╯ ╰╯
0.00 ┼───────────────╯╰─────────────╯╰╯ ╰─╯
:
┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──────────┼┼──
2011-01 2012-01 2013-01 2014-01 2015-01 2016-01 2017-01 2018-01 2019-01 2020-01```
## npm package
```bash
# install package (node version > 10.0.0)
npm install -g hacker-job-trends# see match count history on hackernews who is hiring post
hjt 'python'# match multiple keyword and a count them together
hjt ' js ' + 'javascript'# match multiple keywords but you want to do a subtraction operation
hjt 'remote' - 'no remote' - 'not remote'# If you want the trends with count of keywords related to number of posts, add the option `--relative`
hjt react --relative
```## Contributing
### 1. Add new useful trend graph
By installing the npm module and generating new interesting chart and open a PR for the `README.md`
### 2. Add new who is hiring link
1. Fork the repo and `npm install`
2. Add new "who is hiring" post url on [HN-who-is-hiring-monthly.md](./HN-who-is-hiring-monthly.md)
3. `npm run updateContents` and make a PR## Best search pattern for searching monthly "who is hiring" on hackernews
```bash
# Google:
Ask HN: Who is Hiring? "November 2011" site:https://news.ycombinator.com/
```> [Donate with bitcoin](https://getcryptoo.github.io/)