@timurtekb/tekjobs 0.44.0 → 0.45.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.
Files changed (33) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/app/dist/assets/{index-D9GAewm_.js → index-BtNxvOxd.js} +7 -7
  3. package/app/dist/assets/{index-CIqEcxvl.css → index-pTsHxrh7.css} +1 -1
  4. package/app/dist/index.html +2 -2
  5. package/package.json +1 -1
  6. package/samples/vault/Jobs/Basalt Systems - Senior Design Engineer, Growth (1010).md +8 -8
  7. package/samples/vault/Jobs/Brightline Studio - Design Engineer (1005).md +3 -3
  8. package/samples/vault/Jobs/Copperleaf - Principal Design Engineer (1006).md +4 -4
  9. package/samples/vault/Jobs/Example Studio - Senior Design Engineer (1013).md +3 -3
  10. package/samples/vault/Jobs/Fjord Analytics - Staff Frontend Engineer, Platform (1003).md +8 -8
  11. package/samples/vault/Jobs/Halcyon Robotics - Senior UX Engineer (1004).md +3 -3
  12. package/samples/vault/Jobs/Lumen Health - Design Systems Engineer (1002).md +3 -3
  13. package/samples/vault/Jobs/Meridian Pay - Staff Design Engineer (1009).md +12 -12
  14. package/samples/vault/Jobs/Northwind Labs - Staff Design Engineer, Design Systems (1000).md +5 -5
  15. package/samples/vault/Jobs/Orbital Software - Senior Design Engineer (1001).md +3 -3
  16. package/samples/vault/Jobs/Quill & Co - Design Engineer, Editor (1008).md +5 -5
  17. package/samples/vault/Jobs/Signalfire Design - Design Engineer (1012).md +4 -4
  18. package/samples/vault/Jobs/Tessellate - Senior Frontend Engineer, Design Systems (1007).md +3 -3
  19. package/samples/vault/Jobs/Verdant - UX Engineer (1011).md +4 -4
  20. package/samples/vault/Logs/{2026-09-16.md → 2026-10-01.md} +3 -3
  21. package/samples/vault/Logs/{2026-09-23.md → 2026-10-08.md} +3 -3
  22. package/samples/vault/People/Lee Example (Fjord Analytics).md +3 -3
  23. package/samples/vault/People/Priya Example (Meridian Pay).md +4 -4
  24. package/samples/vault/People/Sam Example (Northwind Labs).md +1 -1
  25. package/samples/vault/Profile/Positioning.md +1 -1
  26. package/samples/vault/Profile/Profile.md +1 -1
  27. package/samples/vault/Profile/Resume.md +1 -1
  28. package/samples/vault/Profile/Voice.md +1 -1
  29. package/samples/vault/README.md +1 -1
  30. package/samples/vault/Targets/Companies.md +4 -4
  31. package/samples/vault/Targets/Search Criteria.before-2026-09-18.md +82 -0
  32. package/samples/vault/Targets/Search Criteria.md +8 -2
  33. package/samples/vault/_Home.md +12 -13
@@ -10,8 +10,8 @@ source: ashby
10
10
  url: "https://jobs.example.com/halcyon/senior-ux-engineer"
11
11
  score: 106
12
12
  weights: 3e895160
13
- posted: "2026-09-08"
14
- found: 2026-09-09
13
+ posted: "2026-09-23"
14
+ found: 2026-09-24
15
15
  salary: "$180k–$215k"
16
16
  salary_max: 215000
17
17
  pay_band: floor
@@ -33,7 +33,7 @@ tags: [job]
33
33
  - posted 1d ago (+25)
34
34
 
35
35
  ## Status log
36
- - 2026-09-09 — found by scraper (score 106). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
36
+ - 2026-09-24 — found by scraper (score 106). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
37
37
 
38
38
  ## Notes
39
39
 
@@ -10,8 +10,8 @@ source: lever
10
10
  url: "https://jobs.example.com/lumen/design-systems-engineer"
11
11
  score: 109
12
12
  weights: 3e895160
13
- posted: "2026-09-11"
14
- found: 2026-09-12
13
+ posted: "2026-09-26"
14
+ found: 2026-09-27
15
15
  salary: "$175k–$205k"
16
16
  salary_max: 205000
17
17
  pay_band: floor
@@ -32,7 +32,7 @@ tags: [job]
32
32
  - posted 1d ago (+25)
33
33
 
34
34
  ## Status log
35
- - 2026-09-12 — found by scraper (score 109). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
35
+ - 2026-09-27 — found by scraper (score 109). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
36
36
 
37
37
  ## Notes
38
38
 
@@ -10,8 +10,8 @@ source: greenhouse
10
10
  url: "https://jobs.example.com/meridian/staff-design-engineer"
11
11
  score: 137
12
12
  weights: 3e895160
13
- posted: "2026-09-02"
14
- found: 2026-09-03
13
+ posted: "2026-09-17"
14
+ found: 2026-09-18
15
15
  salary: "$225k–$275k"
16
16
  salary_max: 275000
17
17
  pay_band: floor
@@ -33,28 +33,28 @@ tags: [job]
33
33
  - posted 1d ago (+25)
34
34
 
35
35
  ## Status log
36
- - 2026-09-03 — found by scraper (score 137). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
37
- - 2026-09-04 — new → **reviewing** (via app)
38
- - 2026-09-06 — reviewing → **applying** (via app)
39
- - 2026-09-11 — applying → **applied** (via app)
40
- - 2026-09-18 — applied → **interviewing** (via app)
36
+ - 2026-09-18 — found by scraper (score 137). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
37
+ - 2026-09-19 — new → **reviewing** (via app)
38
+ - 2026-09-21 — reviewing → **applying** (via app)
39
+ - 2026-09-26 — applying → **applied** (via app)
40
+ - 2026-10-03 — applied → **interviewing** (via app)
41
41
 
42
42
  ## Notes
43
- - 2026-09-18 (app): Recruiter screen with Priya went well; technical interview with the platform lead scheduled for next week. She asked for the Storybook link.
43
+ - 2026-10-03 (app): Recruiter screen with Priya went well; technical interview with the platform lead scheduled for next week. She asked for the Storybook link.
44
44
 
45
45
  ## Application
46
46
  - **Narrative:** Design engineer; the Acme system numbers lead (62 components, 12 teams, defects down a third).
47
47
  - **Resume variant:** Design Engineer (Staff)
48
- - **Cover letter:** Drafted 2026-09-11, 107 words. Full text under "Cover letter" in this note.
49
- - **Applied on:** 2026-09-11
48
+ - **Cover letter:** Drafted 2026-09-26, 107 words. Full text under "Cover letter" in this note.
49
+ - **Applied on:** 2026-09-26
50
50
  - **Contact / referral:**
51
- - **Follow-up due:** 2026-09-18
51
+ - **Follow-up due:** 2026-10-03
52
52
  - **Tailored summary:** Design engineer with eight years on design systems; led the Acme Finance system from 4 to 62 components across 12 teams, including white-label theming for partner banks.
53
53
  - **Tailored bullets:** System architecture and tokens · white-label theming · the ESM migration (1.9 MB to 640 kB) · the WCAG 2.1 AA audit with zero blockers
54
54
  - **Risks:** No payroll domain experience; say so, and point at fintech at Acme.
55
55
 
56
56
  ## Cover letter
57
- > Drafted 2026-09-11 (via app), 107 words. A draft: read it, edit it, send it yourself.
57
+ > Drafted 2026-09-26 (via app), 107 words. A draft: read it, edit it, send it yourself.
58
58
 
59
59
  Hello. Your posting says Meridian Pay's design system serves six product teams and the white-label theming your partners depend on. At Acme Finance I took the system from 4 components to 62, used by 12 teams, with partner theming built on the same tokens; UI defect reports fell by a third in the year after. The part I would bring first is the token pipeline, because a system that themes for partners lives or dies on it. In the first month I would inventory the two legacy apps against the system and write down what they still need, since that list is the migration plan. Jordan Example.
60
60
 
@@ -10,8 +10,8 @@ source: greenhouse
10
10
  url: "https://jobs.example.com/northwind/staff-design-engineer-design-systems"
11
11
  score: 148
12
12
  weights: 3e895160
13
- posted: "2026-09-20"
14
- found: 2026-09-21
13
+ posted: "2026-10-05"
14
+ found: 2026-10-06
15
15
  salary: "$215k–$265k"
16
16
  salary_max: 265000
17
17
  pay_band: floor
@@ -33,9 +33,9 @@ tags: [job]
33
33
  - posted 1d ago (+25)
34
34
 
35
35
  ## Status log
36
- - 2026-09-21 — found by scraper (score 148). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
37
- - 2026-09-21 — new → **reviewing** (via app)
38
- - 2026-09-22 — reviewing → **applying** (via app)
36
+ - 2026-10-06 — found by scraper (score 148). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
37
+ - 2026-10-06 — new → **reviewing** (via app)
38
+ - 2026-10-07 — reviewing → **applying** (via app)
39
39
 
40
40
  ## Notes
41
41
 
@@ -10,8 +10,8 @@ source: ashby
10
10
  url: "https://jobs.example.com/orbital/senior-design-engineer"
11
11
  score: 129
12
12
  weights: 3e895160
13
- posted: "2026-09-17"
14
- found: 2026-09-18
13
+ posted: "2026-10-02"
14
+ found: 2026-10-03
15
15
  salary: "$190k–$230k"
16
16
  salary_max: 230000
17
17
  pay_band: floor
@@ -33,7 +33,7 @@ tags: [job]
33
33
  - posted 1d ago (+25)
34
34
 
35
35
  ## Status log
36
- - 2026-09-18 — found by scraper (score 129). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
36
+ - 2026-10-03 — found by scraper (score 129). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
37
37
 
38
38
  ## Notes
39
39
 
@@ -11,8 +11,8 @@ source: lever
11
11
  url: "https://jobs.example.com/quill/design-engineer-editor"
12
12
  score: 63
13
13
  weights: 3e895160
14
- posted: "2026-09-05"
15
- found: 2026-09-06
14
+ posted: "2026-09-20"
15
+ found: 2026-09-21
16
16
  salary: "$170k–$210k"
17
17
  salary_max: 210000
18
18
  pay_band: floor
@@ -34,9 +34,9 @@ tags: [job]
34
34
  - posted 1d ago (+25)
35
35
 
36
36
  ## Status log
37
- - 2026-09-06 — found by scraper (score 63). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
38
- - 2026-09-07 — new → **reviewing** (via app)
39
- - 2026-09-08 — reviewing → **passed** (wrong role shape) (via app)
37
+ - 2026-09-21 — found by scraper (score 63). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
38
+ - 2026-09-22 — new → **reviewing** (via app)
39
+ - 2026-09-23 — reviewing → **passed** (wrong role shape) (via app)
40
40
 
41
41
  ## Notes
42
42
 
@@ -11,8 +11,8 @@ source: lever
11
11
  url: "https://jobs.example.com/signalfire/design-engineer"
12
12
  score: 23
13
13
  weights: 3e895160
14
- posted: "2026-09-21"
15
- found: 2026-09-21
14
+ posted: "2026-10-06"
15
+ found: 2026-10-06
16
16
  salary: "$170k–$200k"
17
17
  salary_max: 200000
18
18
  pay_band: floor
@@ -33,8 +33,8 @@ tags: [job]
33
33
  - posted 0d ago (+25)
34
34
 
35
35
  ## Status log
36
- - 2026-09-21 — found by scraper (score 23). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
37
- - 2026-09-22 — new → **passed** (location or authorisation) (via app)
36
+ - 2026-10-06 — found by scraper (score 23). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
37
+ - 2026-10-07 — new → **passed** (location or authorisation) (via app)
38
38
 
39
39
  ## Notes
40
40
 
@@ -10,8 +10,8 @@ source: ashby
10
10
  url: "https://jobs.example.com/tessellate/senior-frontend-engineer-design-systems"
11
11
  score: 136
12
12
  weights: 3e895160
13
- posted: "2026-09-16"
14
- found: 2026-09-17
13
+ posted: "2026-10-01"
14
+ found: 2026-10-02
15
15
  salary: "$185k–$225k"
16
16
  salary_max: 225000
17
17
  pay_band: floor
@@ -33,7 +33,7 @@ tags: [job]
33
33
  - posted 1d ago (+25)
34
34
 
35
35
  ## Status log
36
- - 2026-09-17 — found by scraper (score 136). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
36
+ - 2026-10-02 — found by scraper (score 136). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
37
37
 
38
38
  ## Notes
39
39
 
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  type: job
3
3
  status: new
4
- listing: closed 2026-09-14
4
+ listing: closed 2026-09-29
5
5
  company: "Verdant"
6
6
  title: "UX Engineer"
7
7
  location: "Remote (United States)"
@@ -10,8 +10,8 @@ source: greenhouse
10
10
  url: "https://jobs.example.com/verdant/ux-engineer"
11
11
  score: 77
12
12
  weights: 3e895160
13
- posted: "2026-08-24"
14
- found: 2026-08-25
13
+ posted: "2026-09-08"
14
+ found: 2026-09-09
15
15
  salary: "$165k–$190k"
16
16
  salary_max: 190000
17
17
  pay_band: stretch
@@ -32,7 +32,7 @@ tags: [job, stretch]
32
32
  - posted 1d ago (+25)
33
33
 
34
34
  ## Status log
35
- - 2026-08-25 — found by scraper (score 77). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
35
+ - 2026-09-09 — found by scraper (score 77). Set `status:` above to `reviewing`, `applying`, `applied`, `interviewing`, `offer`, `rejected`, or `passed`.
36
36
 
37
37
  ## Notes
38
38
 
@@ -1,10 +1,10 @@
1
1
  ---
2
2
  type: log
3
- date: 2026-09-16
3
+ date: 2026-10-01
4
4
  ---
5
- # 2026-09-16 — scraper log
5
+ # 2026-10-01 — scraper log
6
6
 
7
- ## Run 2026-09-16 07:30 UTC
7
+ ## Run 2026-10-01 07:30 UTC
8
8
  - Boards: 304/304 ok · postings scanned: 24812 · scored ≥ 45: 394 · **new: 9** · closed: 0 · 88.4s
9
9
  - Criteria: Search Criteria
10
10
  - TekJobs postings: 1 postings
@@ -1,10 +1,10 @@
1
1
  ---
2
2
  type: log
3
- date: 2026-09-23
3
+ date: 2026-10-08
4
4
  ---
5
- # 2026-09-23 — scraper log
5
+ # 2026-10-08 — scraper log
6
6
 
7
- ## Run 2026-09-23 07:30 UTC
7
+ ## Run 2026-10-08 07:30 UTC
8
8
  - Boards: 304/304 ok · postings scanned: 25340 · scored ≥ 45: 394 · **new: 3** · closed: 1 · 88.4s
9
9
  - Criteria: Search Criteria
10
10
  - TekJobs postings: 1 postings
@@ -5,8 +5,8 @@ role: referral
5
5
  company: "Fjord Analytics"
6
6
  email: "lee@example.com"
7
7
  links: ""
8
- created: 2026-09-17
9
- last_contact: 2026-09-17
8
+ created: 2026-10-02
9
+ last_contact: 2026-10-02
10
10
  ---
11
11
 
12
12
  # Lee Example
@@ -18,5 +18,5 @@ Former Widgets Inc colleague, now on Fjord's data team.
18
18
  - [[Jobs/Fjord Analytics - Staff Frontend Engineer, Platform (1003)|Fjord Analytics - Staff Frontend Engineer, Platform]] · referral
19
19
 
20
20
  ## Log
21
- - 2026-09-17 (app): Asked for a referral; Lee submitted it the same afternoon.
21
+ - 2026-10-02 (app): Asked for a referral; Lee submitted it the same afternoon.
22
22
 
@@ -5,8 +5,8 @@ role: recruiter
5
5
  company: "Meridian Pay"
6
6
  email: "priya@meridian.example.com"
7
7
  links: ""
8
- created: 2026-09-09
9
- last_contact: 2026-09-18
8
+ created: 2026-09-24
9
+ last_contact: 2026-10-03
10
10
  ---
11
11
 
12
12
  # Priya Example
@@ -18,6 +18,6 @@ Technical recruiter for the platform org. Replies within a day.
18
18
  - [[Jobs/Meridian Pay - Staff Design Engineer (1009)|Meridian Pay - Staff Design Engineer]] · recruiter
19
19
 
20
20
  ## Log
21
- - 2026-09-09 (mail): Wrote back the day after the application: "Would love to set up a 30-minute intro."
22
- - 2026-09-18 (mail): Recruiter screen done; sending the platform lead my Storybook link.
21
+ - 2026-09-24 (mail): Wrote back the day after the application: "Would love to set up a 30-minute intro."
22
+ - 2026-10-03 (mail): Recruiter screen done; sending the platform lead my Storybook link.
23
23
 
@@ -5,7 +5,7 @@ role: hiring-manager
5
5
  company: "Northwind Labs"
6
6
  email: ""
7
7
  links: "https://www.linkedin.com/in/sam-example"
8
- created: 2026-09-20
8
+ created: 2026-10-05
9
9
  last_contact:
10
10
  ---
11
11
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  type: positioning
3
- updated: 2026-09-03
3
+ updated: 2026-09-18
4
4
  ---
5
5
  # Positioning
6
6
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  type: profile
3
- updated: 2026-09-03
3
+ updated: 2026-09-18
4
4
  status: reviewed
5
5
  ---
6
6
  # Candidate profile
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  type: resume
3
- updated: 2026-09-03
3
+ updated: 2026-09-18
4
4
  source: Resume - Jordan Example.pdf
5
5
  ---
6
6
  # Jordan Example
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  type: voice
3
- updated: 2026-09-03
3
+ updated: 2026-09-18
4
4
  ---
5
5
  # Voice
6
6
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  A complete, fictional TekJobs profile folder: Jordan Example, a design engineer in Portland, three weeks into a search. Fourteen postings at companies that do not exist, one application in interview, one rejected, two passed, one listing closed, three people on the threads, two scan logs and the dashboard. Every note was written by the product's own code (`npm run sample` rebuilds it), so it is always in the shape the app expects.
4
4
 
5
- Look at it in the app without touching your own folder. Installed from npm: `tekjobs init --sample`, then `tekjobs up`. From a clone:
5
+ Look at it in the app without touching your own folder:
6
6
 
7
7
  ```
8
8
  TEKJOBS_PROFILE=$PWD/samples/vault npm run serve
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  type: config
3
- updated: 2026-09-23
3
+ updated: 2026-10-08
4
4
  ---
5
5
  # Company Watchlist
6
6
 
@@ -117,7 +117,7 @@ This starter list is the community registry: tech companies whose boards answer
117
117
  | DoorDash | greenhouse | doordashusa | C | | |
118
118
  | Lyft | greenhouse | lyft | C | | |
119
119
  | Roblox | greenhouse | roblox | C | | |
120
- | Amplitude | greenhouse | amplitude | C | | |
120
+ | Amplitude | ashby | amplitude | C | | moved to ashby 2026-10-07 |
121
121
  | Mixpanel | greenhouse | mixpanel | C | | |
122
122
  | Lattice | greenhouse | lattice | C | | |
123
123
  | Carta | greenhouse | carta | C | | |
@@ -209,7 +209,7 @@ This starter list is the community registry: tech companies whose boards answer
209
209
  | GitLab | greenhouse | gitlab | A | | |
210
210
  | Headway | ashby | headway | B | | |
211
211
  | Hex | ashby | hex | A | | |
212
- | Hightouch | greenhouse | hightouch | B | | |
212
+ | Hightouch | ashby | hightouch | B | | moved to ashby 2026-10-07 |
213
213
  | Honeycomb | greenhouse | honeycomb | B | | |
214
214
  | Included Health | lever | includedhealth | B | | |
215
215
  | Inngest | ashby | inngest | B | | |
@@ -236,7 +236,7 @@ This starter list is the community registry: tech companies whose boards answer
236
236
  | Orum | ashby | orum | B | | |
237
237
  | Oscar | greenhouse | oscar | B | | |
238
238
  | Otter | greenhouse | otter | B | | |
239
- | Outschool | greenhouse | outschool | B | | |
239
+ | Outschool | ashby | outschool | B | | moved to ashby 2026-10-07 |
240
240
  | Parloa | greenhouse | parloa | B | | |
241
241
  | Payoneer | greenhouse | payoneer | B | | |
242
242
  | Peloton | greenhouse | peloton | B | | |
@@ -0,0 +1,82 @@
1
+ ---
2
+ type: config
3
+ updated: 2026-10-08
4
+ ---
5
+ # Search Criteria
6
+
7
+ > **The scraper reads the JSON block below.** The onboarding interview fills it from your resume and your answers; after that, edit it here. Weights are additive points. A job needs `minScore` to get its own note in `Jobs/`.
8
+
9
+ How scoring works:
10
+ - **titleTerms** — best single match in the job title counts fully, each extra match adds 5. Empty until the interview runs.
11
+ - **titleExclude** — any hit in the title drops the job entirely. Abbreviations are spelled out first, so "director" catches "Sr. Dir".
12
+ - **companyExclude** — any hit in the company name drops the job entirely: industries, staffing agencies, names.
13
+ - **noTitleMatchPenalty** — a posting whose title matches nothing in `titleTerms` takes this hit, so location and recency alone can't carry it over the bar.
14
+ - **descTerms** — each term found in the description adds its weight (capped at `descCap`).
15
+ - **seniority** — senior/staff/lead/principal adds; junior/intern subtracts.
16
+ - **location** — remote adds; with `requireRemote` on, anything not remote takes `notRemotePenalty` and drops out. Clearly non-US-only listings subtract heavily.
17
+ - **salary** — a stated range at or above `minAnnual` adds; between `stretchAnnual` and `minAnnual` is the stretch band (small penalty, kept visible); below subtracts. No stated range is neutral.
18
+ - **recency** — posted within 7 days adds, over 90 days subtracts.
19
+ - **openSources** — aggregator feeds that need no company slug. Set one to `false` to drop it. `wellfound` and `builtin` read those sites' remote listing pages (no API), searched by design-engineering roles; both lose to the same job from its ATS when both turn up.
20
+ - **email** — job alert emails you save into the `Inbox` folder of this profile, as `.eml`. This is how the boards with no public API get in: LinkedIn, Indeed, Otta and Wellfound all send alerts, and an email in your own mailbox is your own data. Nothing contacts those sites — it reads files you put there, and the links are for you to open. Links to Greenhouse, Lever, Ashby and Workday are picked up from any sender. Rows are thin (a title, a company, usually a location), so they score below the same job from an ATS and lose to it when both turn up.
21
+ - **adzuna** — the one source that needs a key. Set `ADZUNA_APP_ID` and `ADZUNA_APP_KEY` in the environment (free at developer.adzuna.com), turn `openSources.adzuna` on, and it searches your top `titleTerms` in each country under `adzuna.countries`. It reaches listings that never appear on a company ATS board, but its descriptions come back as snippets, so those rows score lower than the same job fetched from its ATS.
22
+ - **usajobs** — every US federal posting. Set `USAJOBS_API_KEY` and `USAJOBS_EMAIL` (free at developer.usajobs.gov; the email is the one the key is registered to) and turn `openSources.usajobs` on. Unlike Adzuna it returns the whole description, so these rows score on equal footing, and it carries a real application deadline.
23
+
24
+ ```json
25
+ {
26
+ "minScore": 45,
27
+ "descCap": 35,
28
+ "noTitleMatchPenalty": -40,
29
+ "titleExtraPer": 5,
30
+ "titleExtraCap": 10,
31
+ "titleTerms": {},
32
+ "titleExclude": [
33
+ "intern", "internship", "apprentice", "new grad", "recruit", "account executive", "customer success",
34
+ "manufacturing", "process engineer", "chemical", "biomedical", "automotive", "aerospace"
35
+ ],
36
+ "companyExclude": [],
37
+ "descTerms": {},
38
+ "seniority": {
39
+ "boost": { "senior": 8, "staff": 10, "lead": 10, "principal": 10, "head of": 8, "founding": 8 },
40
+ "penalty": { "junior": -30, "intern": -50, "entry": -25, "associate": -15, "new grad": -40 }
41
+ },
42
+ "salary": { "minAnnual": null, "stretchAnnual": null, "meetsBonus": 10, "abovePer10k": 1, "aboveCap": 8, "stretchPenalty": -8, "belowPenalty": -30 },
43
+ "location": {
44
+ "requireRemote": false,
45
+ "notRemotePenalty": -60,
46
+ "remoteBoost": 15,
47
+ "bayAreaBoost": 0,
48
+ "bayAreaTerms": [],
49
+ "usTerms": ["united states", "usa", "u.s.", "us-", "us ", "(us)", "us)", "north america", "americas", "remote - us", "remote us", "us remote", "anywhere"],
50
+ "nonUsTerms": ["london", "berlin", "paris", "amsterdam", "dublin", "europe", "emea", "uk", "united kingdom", "germany", "france", "netherlands", "spain", "portugal", "poland", "india", "bangalore", "bengaluru", "hyderabad", "singapore", "sydney", "melbourne", "australia", "toronto", "vancouver", "canada", "brazil", "são paulo", "sao paulo", "mexico city", "latam", "apac", "tokyo", "japan", "israel", "tel aviv", "stockholm", "copenhagen", "zurich", "lisbon", "warsaw", "prague", "tallinn", "riga", "riyadh", "saudi arabia", "dubai", "abu dhabi", "uae", "united arab emirates", "middle east", "korea", "seoul", "china", "shanghai", "beijing", "hong kong", "taiwan", "philippines", "vietnam", "indonesia", "nigeria", "south africa", "argentina", "colombia", "chile", "ottawa", "montreal", "waterloo"],
51
+ "nonUsPenalty": -45
52
+ },
53
+ "recency": { "days2": 25, "days7": 15, "days30": 5, "days90": -5, "older": -25 },
54
+ "openSources": {
55
+ "remoteok": true, "hn": true, "email": true, "adzuna": false, "usajobs": false,
56
+ "themuse": true, "remotive": false, "himalayas": true, "jobicy": true,
57
+ "workingnomads": true, "arbeitnow": false, "wwr": true,
58
+ "wellfound": true, "builtin": true
59
+ },
60
+ "adzuna": {
61
+ "_note": "Needs ADZUNA_APP_ID and ADZUNA_APP_KEY in the environment (free at developer.adzuna.com), and openSources.adzuna set to true. Searches for your top titleTerms unless queries is set. Descriptions come back as snippets, so these rows score lower than the same job from its ATS.",
62
+ "countries": ["us"],
63
+ "queries": [],
64
+ "maxQueries": 6,
65
+ "pages": 2,
66
+ "maxDaysOld": 30
67
+ },
68
+ "email": {
69
+ "_note": "Job alert emails you save into the Inbox folder of your profile, as .eml. Nothing contacts the sites; this reads files you put there. Understands LinkedIn, Indeed, Otta and Wellfound alerts, and picks up Greenhouse/Lever/Ashby/Workday links in anything else. Rows are thin — a title, a company, usually a location — so they score below the same job from an ATS.",
70
+ "maxFiles": 200
71
+ },
72
+ "usajobs": {
73
+ "_note": "Needs USAJOBS_API_KEY and USAJOBS_EMAIL in the environment (free at developer.usajobs.gov; the email is the one the key is registered to), and openSources.usajobs set to true. Every US federal posting, with full descriptions and a real application deadline. Searches your top titleTerms as position titles unless searchBy is \"keyword\" or queries is set.",
74
+ "queries": [],
75
+ "maxQueries": 6,
76
+ "pages": 2,
77
+ "datePosted": 30,
78
+ "searchBy": "title"
79
+ },
80
+ "maxDescriptionChars": 6000
81
+ }
82
+ ```
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  type: config
3
- updated: 2026-09-03
3
+ updated: 2026-09-18
4
4
  ---
5
5
  # Search Criteria
6
6
 
@@ -8,7 +8,8 @@ updated: 2026-09-03
8
8
 
9
9
  How scoring works:
10
10
  - **titleTerms** — best single match in the job title counts fully, each extra match adds 5. Empty until the interview runs.
11
- - **titleExclude** — any hit in the title drops the job entirely.
11
+ - **titleExclude** — any hit in the title drops the job entirely. Abbreviations are spelled out first, so "director" catches "Sr. Dir".
12
+ - **companyExclude** — any hit in the company name drops the job entirely: industries, staffing agencies, names.
12
13
  - **noTitleMatchPenalty** — a posting whose title matches nothing in `titleTerms` takes this hit, so location and recency alone can't carry it over the bar.
13
14
  - **descTerms** — each term found in the description adds its weight (capped at `descCap`).
14
15
  - **seniority** — senior/staff/lead/principal adds; junior/intern subtracts.
@@ -52,6 +53,11 @@ How scoring works:
52
53
  "automotive",
53
54
  "aerospace"
54
55
  ],
56
+ "companyExclude": [
57
+ "gambling",
58
+ "casino",
59
+ "staffing"
60
+ ],
55
61
  "descTerms": {
56
62
  "design system": 6,
57
63
  "design systems": 6,
@@ -1,15 +1,14 @@
1
1
  ---
2
2
  type: dashboard
3
- generated: 2026-09-23T21:16:28.041Z
3
+ generated: 2026-10-08T02:20:42.022Z
4
4
  ---
5
5
  # TekJobs — Home
6
6
  > Generated by the scraper. Edits here get overwritten; write in the job notes or [[Applications/Pipeline Notes]].
7
7
 
8
- **Last run:** 2026-09-23 07:30 UTC · 304/304 boards fetched (0 failed) · 25340 postings scanned · **3 new matches** · log: [[Logs/2026-09-23]]
8
+ **Last run:** 2026-10-08 07:30 UTC · 304/304 boards fetched (0 failed) · 25340 postings scanned · **3 new matches** · log: [[Logs/2026-10-08]]
9
9
 
10
10
  ## Needs you
11
11
  - **6** new matches waiting for a first look (below).
12
- - Open profile questions in [[Profile/Profile]] (comp, remote vs hybrid, which narrative leads).
13
12
 
14
13
  ## Pipeline
15
14
  | Status | Count |
@@ -25,12 +24,12 @@ generated: 2026-09-23T21:16:28.041Z
25
24
  ## New matches — top 6 of 6 by score
26
25
  | Score | Company | Role | Location | Pay | Band | Posted | Note |
27
26
  | --- | --- | --- | --- | --- | --- | --- | --- |
28
- | 136 | Tessellate | [Senior Frontend Engineer, Design Systems](https://jobs.example.com/tessellate/senior-frontend-engineer-design-systems) | Remote, US | $185k–$225k | ✅ floor | 2026-09-16 | [[Jobs/Tessellate - Senior Frontend Engineer, Design Systems (1007)\|open]] |
29
- | 130 | Example Studio | [Senior Design Engineer](https://tekjobs.timurtek.com/jobs/example-tekjobs) | Remote · United States | $180k–$240k | ✅ floor | 2026-09-23 | [[Jobs/Example Studio - Senior Design Engineer (1013)\|open]] |
30
- | 129 | Orbital Software | [Senior Design Engineer](https://jobs.example.com/orbital/senior-design-engineer) | Remote (US) | $190k–$230k | ✅ floor | 2026-09-17 | [[Jobs/Orbital Software - Senior Design Engineer (1001)\|open]] |
31
- | 109 | Lumen Health | [Design Systems Engineer](https://jobs.example.com/lumen/design-systems-engineer) | Remote US · Denver, CO | $175k–$205k | ✅ floor | 2026-09-11 | [[Jobs/Lumen Health - Design Systems Engineer (1002)\|open]] |
32
- | 106 | Halcyon Robotics | [Senior UX Engineer](https://jobs.example.com/halcyon/senior-ux-engineer) | Remote (United States) · Boston, MA | $180k–$215k | ✅ floor | 2026-09-08 | [[Jobs/Halcyon Robotics - Senior UX Engineer (1004)\|open]] |
33
- | 95 | Brightline Studio | [Design Engineer](https://jobs.example.com/brightline/design-engineer) | Remote · United States | $160k–$195k | ↗ stretch | 2026-09-22 | [[Jobs/Brightline Studio - Design Engineer (1005)\|open]] |
27
+ | 136 | Tessellate | [Senior Frontend Engineer, Design Systems](https://jobs.example.com/tessellate/senior-frontend-engineer-design-systems) | Remote, US | $185k–$225k | ✅ floor | 2026-10-01 | [[Jobs/Tessellate - Senior Frontend Engineer, Design Systems (1007)\|open]] |
28
+ | 130 | Example Studio | [Senior Design Engineer](https://tekjobs.timurtek.com/jobs/example-tekjobs) | Remote · United States | $180k–$240k | ✅ floor | 2026-10-08 | [[Jobs/Example Studio - Senior Design Engineer (1013)\|open]] |
29
+ | 129 | Orbital Software | [Senior Design Engineer](https://jobs.example.com/orbital/senior-design-engineer) | Remote (US) | $190k–$230k | ✅ floor | 2026-10-02 | [[Jobs/Orbital Software - Senior Design Engineer (1001)\|open]] |
30
+ | 109 | Lumen Health | [Design Systems Engineer](https://jobs.example.com/lumen/design-systems-engineer) | Remote US · Denver, CO | $175k–$205k | ✅ floor | 2026-09-26 | [[Jobs/Lumen Health - Design Systems Engineer (1002)\|open]] |
31
+ | 106 | Halcyon Robotics | [Senior UX Engineer](https://jobs.example.com/halcyon/senior-ux-engineer) | Remote (United States) · Boston, MA | $180k–$215k | ✅ floor | 2026-09-23 | [[Jobs/Halcyon Robotics - Senior UX Engineer (1004)\|open]] |
32
+ | 95 | Brightline Studio | [Design Engineer](https://jobs.example.com/brightline/design-engineer) | Remote · United States | $160k–$195k | ↗ stretch | 2026-10-07 | [[Jobs/Brightline Studio - Design Engineer (1005)\|open]] |
34
33
 
35
34
  ## Stretch band — stated pay $180k to $220k (1)
36
35
  _Visible on purpose, scored slightly down. Senior-level roles that would want a negotiation to reach the floor._
@@ -41,12 +40,12 @@ _Visible on purpose, scored slightly down. Senior-level roles that would want a
41
40
  ## Active applications
42
41
  | Status | Company | Role | Found | Note |
43
42
  | --- | --- | --- | --- | --- |
44
- | applied | Fjord Analytics | [Staff Frontend Engineer, Platform](https://jobs.example.com/fjord/staff-frontend-engineer-platform) | 2026-09-15 | [[Jobs/Fjord Analytics - Staff Frontend Engineer, Platform (1003)\|open]] |
45
- | interviewing | Meridian Pay | [Staff Design Engineer](https://jobs.example.com/meridian/staff-design-engineer) | 2026-09-03 | [[Jobs/Meridian Pay - Staff Design Engineer (1009)\|open]] |
46
- | applying | Northwind Labs | [Staff Design Engineer, Design Systems](https://jobs.example.com/northwind/staff-design-engineer-design-systems) | 2026-09-21 | [[Jobs/Northwind Labs - Staff Design Engineer, Design Systems (1000)\|open]] |
43
+ | applied | Fjord Analytics | [Staff Frontend Engineer, Platform](https://jobs.example.com/fjord/staff-frontend-engineer-platform) | 2026-09-30 | [[Jobs/Fjord Analytics - Staff Frontend Engineer, Platform (1003)\|open]] |
44
+ | interviewing | Meridian Pay | [Staff Design Engineer](https://jobs.example.com/meridian/staff-design-engineer) | 2026-09-18 | [[Jobs/Meridian Pay - Staff Design Engineer (1009)\|open]] |
45
+ | applying | Northwind Labs | [Staff Design Engineer, Design Systems](https://jobs.example.com/northwind/staff-design-engineer-design-systems) | 2026-10-06 | [[Jobs/Northwind Labs - Staff Design Engineer, Design Systems (1000)\|open]] |
47
46
 
48
47
  ## Listings that closed before review
49
- - Verdant — UX Engineer (closed 2026-09-14) [[Jobs/Verdant - UX Engineer (1011)|open]]
48
+ - Verdant — UX Engineer (closed 2026-09-29) [[Jobs/Verdant - UX Engineer (1011)|open]]
50
49
 
51
50
  ## Map
52
51
  - [[Profile/Profile]] · [[Profile/Resume - Master]] · [[Profile/Positioning]]