{"id":19791800,"url":"https://github.com/solidstategroup/python-technical-test","last_synced_at":"2025-02-28T09:39:08.129Z","repository":{"id":51093270,"uuid":"171455566","full_name":"SolidStateGroup/python-technical-test","owner":"SolidStateGroup","description":"Python Technical Test","archived":false,"fork":false,"pushed_at":"2021-05-24T09:40:11.000Z","size":18,"stargazers_count":0,"open_issues_count":1,"forks_count":2,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-01-11T04:23:25.046Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","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/SolidStateGroup.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}},"created_at":"2019-02-19T10:41:49.000Z","updated_at":"2019-07-19T07:50:38.000Z","dependencies_parsed_at":"2022-09-21T18:52:34.406Z","dependency_job_id":null,"html_url":"https://github.com/SolidStateGroup/python-technical-test","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SolidStateGroup%2Fpython-technical-test","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SolidStateGroup%2Fpython-technical-test/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SolidStateGroup%2Fpython-technical-test/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SolidStateGroup%2Fpython-technical-test/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SolidStateGroup","download_url":"https://codeload.github.com/SolidStateGroup/python-technical-test/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241132131,"owners_count":19915097,"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","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":[],"created_at":"2024-11-12T07:04:55.641Z","updated_at":"2025-02-28T09:39:08.073Z","avatar_url":"https://github.com/SolidStateGroup.png","language":"Python","readme":"python-technical-test\n===================\n\nPython programming questions.\n\n## Instructions\n\n1. Clone this git repository which contains a number of Python source files and open as a project in your editor of choice.\n2. Answer the three questions listed below by providing the missing implementations.  Do NOT use 3rd party libraries.\n3. Provide tests in your preferred style to support your solution.  You can use common test libraries such as pytest.\n4. Zip up and email the entire source tree to jobs@solidstategroup.com.\n\n**Note: Please do NOT spend more than 2 hours on this test.**\n\nIn addition to a working solution, we will be looking for:\n\n- Good coding style\n- Use of comments - especially if you get stuck on a question\n- Understanding of object orientation\n- Understanding of concurrency issues that might arise\n\n**Note: Please do not push your test answers back onto Github.**\n\n## Question 1: Palindrome\n\nComplete the method stub in the Palindrome class.\n\n## Question 2: Tree Average Value\n\nComplete the method stub in the TreeAverageValue class.\n\n## Question 3: Parallel Multi Search\n\nReview the Search interface.  The search method on this interface represents a generic Search.\n\nExample concrete class: GoogleSearch - usage - search google for \"London\"\n\nReview the MultiSearch class.  The aim of this class is to provide multiple searches using the same query over a\ndefined set of searches.  The results of all the searches are to be aggregated.\n\nExample concrete class: SerialMultiSearch - usage - search google and yahoo searches for \"London\", in serial fashion\n\nAs a single search call made to a resource might take a considerable amount of time, ParallelMultiSearch\nwill execute all the searches in the MultiSearch in parallel to provide a quicker overall implementation.\n\nComplete the method stub in the ParallelMultiSearch class to provide a fast implementation of the search.\n\nExample usage: - search google and yahoo searches for \"London\", in parallel fashion\n\nNote: Assume each Search is independent to the others.\n\nNote: The order of the results returned by the MultiSearch is not important.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsolidstategroup%2Fpython-technical-test","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsolidstategroup%2Fpython-technical-test","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsolidstategroup%2Fpython-technical-test/lists"}