{"id":19561280,"url":"https://github.com/srgchrksv/candidates","last_synced_at":"2026-05-02T22:32:26.092Z","repository":{"id":229613470,"uuid":"776580075","full_name":"srgchrksv/candidates","owner":"srgchrksv","description":"Managing potential candidates","archived":false,"fork":false,"pushed_at":"2024-03-25T11:18:17.000Z","size":75,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-26T08:43:48.200Z","etag":null,"topics":["dataengineering","dbdiagram","information-systems","information-technology","jupyter-notebook","management","postgresql","python","rdbms","sql"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/srgchrksv.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-03-23T22:28:26.000Z","updated_at":"2024-03-25T11:18:56.000Z","dependencies_parsed_at":"2024-03-25T12:44:12.510Z","dependency_job_id":null,"html_url":"https://github.com/srgchrksv/candidates","commit_stats":null,"previous_names":["srgchrksv/candidates"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/srgchrksv/candidates","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/srgchrksv%2Fcandidates","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/srgchrksv%2Fcandidates/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/srgchrksv%2Fcandidates/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/srgchrksv%2Fcandidates/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/srgchrksv","download_url":"https://codeload.github.com/srgchrksv/candidates/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/srgchrksv%2Fcandidates/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":285335552,"owners_count":27154282,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-11-19T02:00:05.673Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dataengineering","dbdiagram","information-systems","information-technology","jupyter-notebook","management","postgresql","python","rdbms","sql"],"created_at":"2024-11-11T05:10:34.921Z","updated_at":"2025-11-19T22:03:15.770Z","avatar_url":"https://github.com/srgchrksv.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Managing candidates\n\nI dealt with an organization that had couple issues dealing with potential candidates.\n\nThey admitted that were sending notifications to all candidates regardless of their application status.\n- Details update:\n    - Sending notifications to all candidates, requesting to update details, regardles if application updated or not.\n- Final Invitation:\n    - Sending congratulating invitation to all candidates who had interview or not. \n    - Invitation included condition to take interview.\n    - Stating if taken not to retake. \n\n## Solution:\n![schema/Untitled.png](schema/Untitled.png)\n- Design a database to track the status of each candidate.\n- Send targeted notifications to selected candidates by querying the database with appropriate filters.\n\nSimple example of how to organize database with schema and potetential queries to filter candidates for each stage and notifications.\n\n- [queries](queries) filter queries\n- [schema](schema)  create schema query\n- [notebook.ipynb](notebook.ipynb) to populate with data\n\nTo run relational database management system used for this example, run docker container:\n\n```bash\ndocker run -d \\\n  --name postgres_container \\\n  -p 5432:5432 \\\n  -e POSTGRES_USER=myuser \\\n  -e POSTGRES_PASSWORD=mysecretpassword \\\n  -e POSTGRES_DB=users_db \\\n  postgres:latest\n```\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsrgchrksv%2Fcandidates","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsrgchrksv%2Fcandidates","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsrgchrksv%2Fcandidates/lists"}