Expose HN: StackOverflowgeddon Survival Kit

9
[favorite_button]
Expose HN: StackOverflowgeddon Survival Kit
Advertisements

Classic Overview

The fully dependency is with Google Maps API. If no key for Google Maps API is geared Up it appropriate would no longer autocomplete the enviornment whereILive. In that case the positioning files from the Dev Story is stored at aboutMe.profile.whereILive.notes.

General overview diagram

Study the approach to speed

Unsightly Node.js

legend set Up

legend make

legend commence

curl http://localhost: 3000?username=Dev Story username>

Docker

docker make . -t username/dev-myth-scraper

docker speed -p3000: 3000 -d username/dev-myth-scraper

# If you happen to've a Google Maps API
docker speed -p3000: 3000 -e SO_GOOGLE_MAPS_API_KEY=key value> -d username/dev-myth-scraper

Code

Code organization

The scraping process is designed to note the MAC JSON schema building independently from the set Up on the Stack Overflows HTML. So every “excellent” sub-file on the JSON Schema on the total have its hold parser class.

The DevStoryDownloader and Geocoder are created first and foremost so we are in a position to inject a mock for take a look at capabilities, avoiding overusing the Stack Overflow or Google’s methods, this additionally prevents fraudulent crimson tests. We would possibly per chance perchance exhaust the dependency injection in greater ways, but for a accomplishing that’s going to be used for a couple of days and discarded it would no longer well price the cost.

Advertisements

Deployment

Components architecture

Now we must configure the GOOGLE_MAPS_API_KEY to make exhaust of the geocoder.

Maintain choices

To adapt the scraped files to the MAC JSON Schema we took some make choices.

Title to name and surnames

Stack Overflow makes exhaust of appropriate a string with plump name, to abolish name and surnames fields we determined to make exhaust of the principle be aware as name and the comfort as surnames.

Advertisements

Example:

{
  name: 'Ryan Reynolds'
}

to

{
  name: 'Ryan',
  surnames: 'Reynolds'
}

Space completion

Space is a free enviornment, so we are the exhaust of Google Maps API to accept extra files. whereILive enviornment is serene by country, station, and municipality but on the total a Dev Story fully has 2 of those fields.

Examples:

  • Tampa, Florida> Tampa, Florida, US
  • Madrid, Spain> Madrid, Crew of Madrid, ES

Geocoder flow diagram

Job parsing

job parsing details diagram

Advertisements

Overview parsing

assessment parsing details diagram

Stack Overflow top answers parsing

stack overflow top answers parsing diagram

Why

We were dedicated to building an open platform to abet watch over careers for the duration of 2022, including online CVs. Then, we knew Stack Overflow had determined to sundown the Developer Experiences (a extra or less… online CVs), and that supposed that extra than 4 million builders would lose their skilled files without a cessation in sight.

So, we conception "what if we hustle to accept a minimum of a subset of what we wished to make in 6 months in precisely 2 to present those of us a skill to abet their files?". The leisure is historical past.

  1. First, we defined an open-provide CV layout: the MAC
  2. Second, we created a tool to enhance and store your files out of your Dev Story —as a MAC compliant JSON file— readily available by a touchdown web page. The code working in the lend a hand of it’s what you’ve on this repo.
  3. Third, we improved our online CV platform to import (if wished) files from Dev Experiences without anxiety.

Who we are

The Kit changed into made with ❤️ and care by the Manfred crew.

Advertisements

We are a bunch of builders making an strive to abolish a bigger skill to technical skills recruiting. Here is our manifesto:


Manfred Manifesto

License

This code is free and open-provide instrument licensed and dispensed below the Artistic Commons Attribution Portion Alike 4.0 World (CC BY-SA 4.0 World).

🌟 Unfold the be aware!

If you happen to must claim thanks and/or toughen difficult development of the Kit:

  • Add a GitHub Star to the accomplishing!
  • Tweet referring to the accomplishing for your Twitter!

Thanks so great for your curiosity in rising the rea

Read More

Advertisements
Charlie
WRITEN BY

Charlie

Fill your life with experiences so you always have a great story to tell
Get Connected!
One of the Biggest Social Platform for Entrepreneurs, College Students and all. Come and join our community. Expand your network and get to know new people!

Discussion(s)

No comments yet
Knowasiak We would like to show you notifications so you don't miss chats & status updates.
Dismiss
Allow Notifications