Skip to content

Instantly share code, notes, and snippets.

@tarsisazevedo
Last active August 19, 2023 01:09
Show Gist options
  • Save tarsisazevedo/aa0674a056ce9bfc620c2bea61e7bb10 to your computer and use it in GitHub Desktop.
Save tarsisazevedo/aa0674a056ce9bfc620c2bea61e7bb10 to your computer and use it in GitHub Desktop.
Desafio tecnico para vaga de Pessoa Engenheira de Dados.
estado pib codigo area população idh receita despesa
Rondônia 39450587 11 237765233 1757589 690 9122310.72305 7085530.0168
Acre 13751126 12 164123738 869265 663 6632883.10836 6084416.8063
Amazonas 89017165 13 1559168117 4080611 674 17328459.43402 15324896.55705
Roraima 11011454 14 224273831 576568 707 4419450.41557 3384683.73914
Pará 138068008 15 1245759305 8513497 646 25849446.10454 22533470.04547
Amapá 14338838 16 142470762 829494 708 5396417.14471 4224464.08829
Tocantins 31575831 17 277720404 1555229 699 10305099.01288 8929456.43836
Maranhão 85286226 21 329642170 7035055 639 18503261.35491 17627170.75574
Piauí 41405815 22 251616823 3264531 646 12124215.61511 9676736.31835
Ceará 138378785 23 148894757 9075649 682 28420222.47191 24608352.18276
Rio Grande do Norte 59660847 24 52809602 3479010 684 13527552.73159 11330957.55333
Paraíba 59088986 25 56467239 3996496 658 13097005.31928 10074700.04266
Pernambuco 167289930 26 98068021 9496294 673 35746028.97102 33320486.44445
Alagoas 49456362 27 27843295 3322820 631 11950438.46015 10460634.91711
Sergipe 38866964 28 21926908 2278308 665 10145046.95355 8494927.19996
Bahia 258649049 29 564722611 14812617 660 50191003.24052 45570160.0038
Minas Gerais 544633968 31 586521121 21040662 731 97199823.15616 98391669.16323
Espírito Santo 109226783 32 46074444 3972388 740 19685616.74376 14392338.00188
Rio de Janeiro 640185780 33 43750423 17159960 761 78488140.78862 67965548.69757
São Paulo 2038004931 35 248219481 45538936 783 232822496.56706 231982243.69176
Paraná 401661680 41 199305236 11348937 749 60163576.12246 55534402.97483
Santa Catarina 256661190 42 95730921 7075494 774 34696772.82078 25595103.37918
Rio Grande do Sul 408645099 43 281707151 11329605 746 66397468.17915 62476279.34364
Mato Grosso do Sul 91865803 50 357145535 2748023 729 16396655.77012 14506915.37404
Mato Grosso 123834253 51 903206997 3441998 725 23958528.83588 18187363.27009
Goiás 181692435 52 340125715 6921161 735 37885335.16848 24248380.34233
Distrito Federal 235497107 53 5760783 2974703 824 23812211.27074 21990464.6849

Desafio de Data Engineering

Olá candidata(o)!

Esse desafio tecnico tem como proposito medir suas habilidades tecnicas, seu metodo de resolução de problemas, como pensa e organiza o trabalho.

O tempo recomendado para resolução é 7 dias, porém se você precisar de mais basta nos avisar.

Após finalizar o desafio, nos envie um link para repositório do projeto (Github, Gitlab). Também registre tudo que você fizer: testes que foram executados, ideias que tentou ou gostaria de tentar se tivesse mais tempo, decisões que você tomou e porque, arquiteturas que forem testadas e os motivos de terem sido modificadas ou abandonadas. Crie um arquivo HISTORY.md no repositório para registrar essas reflexões e decisões


Dicas

  • Use ferramentas e bibliotecas open source, mas documente as decisões e porquês

  • Automatize a construção do ambiente (quanto mais facil para rodar, melhor a avaliação)

  • Em caso de dúvidas, pergunte

  • Use git e faça commits descritivos

  • Recomendamos o uso de Java, Scala ou Python para resolução, mas pode ficar a vontade para usar qualquer linguagem


Desafio

Temos dois conjuntos de dados disponiveis, o dataset rouanet.csv e o dataset censo_estado.csv. Com esses datasets faremos nosso desafio. O que precisamos é criar um pipeline de operações que gerem um csv no final.

Os passos desse pipeline são:

  • unificar os datasets rouanet.csv e censo_estado.csv atraves das colunas estado_ibge e codigo, respectivamente
  • criar uma Natural Key para esse dado, usando as colunas estado_ibge e valor_em_reais
  • remover as linhas duplicadas de acordo com a natural key
  • remover linhas com valor_em_reais = 0 ou quantidade = 0
  • trocar os dados da coluna estado para a sigla da UF correspondente, ex.: Rio de Janeiro vira RJ

Depois desse pipeline você deve gerar um csv com nome dados_tratados.csv

O que será avaliado

  • Facilidade de reprodução: Seu codigo precisa ser facil de ser reproduzido, então automatize o maximo possivel o setup do ambiente, ou nos dê instruções claras de como executar o projeto.

  • Legibilidade: Seu codigo precisa ser facil de ler e entender.

  • Organização do projeto e Documentação: Avaliaremos como você organiza seu codigo, seus modulos, dependencias e ambiente. Também vamos avaliar a documentação do projeto

ano estado_ibge quantidade valor_em_reais
2003 11 4 254300
2003 12 2 0
2003 13 6 300000
2003 14 1 30000
2003 15 23 5842618
2003 16 3 0
2003 17 5 81220
2003 21 31 893896
2003 22 13 1173000
2003 24 16 193091.87
2003 25 5 20000
2003 26 109 9616399.59
2003 27 6 162224
2003 28 13 1967113.31
2003 29 127 10662327.93
2003 31 333 44139927.77
2003 32 30 704472.83
2003 41 347 10980798.7
2003 42 157 7492236.35
2003 50 37 1418074.25
2003 51 13 255064.16
2003 52 72 4377431.97
2003 53 172 16612977.06
2004 11 11 394799.48
2004 12 3 112041.19
2004 13 11 3400000
2004 14 1 0
2004 15 33 5224465.71
2004 16 0 0
2004 17 17 696593.88
2004 21 33 825104.5
2004 22 9 1805000
2004 23 76 6446545.15
2004 24 14 897143.88
2004 25 16 184400
2004 27 10 849715.14
2004 28 15 4230387.47
2004 29 163 9241517.68
2004 32 24 2545503.23
2004 50 39 1148773.84
2004 51 37 1191249.9
2004 52 85 4573416.55
2004 53 233 9728327.11
2005 11 12 249039.11
2005 12 2 1113391.72
2005 13 19 738033.73
2005 14 1 0
2005 15 42 2137889.54
2005 16 4 0
2005 17 16 302000
2005 21 59 4775917.45
2005 22 14 1268950
2005 23 94 7526351.2
2005 24 10 1451363.86
2005 25 25 488625
2005 26 134 12065535.36
2005 27 25 682648.75
2005 28 19 4451548.69
2005 29 218 19039820.22
2005 31 743 79991234.359
2005 32 43 5347721.52
2005 33 1319 198598718.2
2005 41 353 17079250.92
2005 43 384 49305232.89
2005 50 39 2837122.96
2005 51 30 1335000
2005 52 122 3255424.82
2005 53 229 11007726.27
2006 11 7 177412.02
2006 12 8 1089745.25
2006 13 19 1592331.11
2006 14 1 25000
2006 15 40 3000033.33
2006 16 2 20000
2006 17 15 534425
2006 22 15 2437213.2
2006 23 101 10883607.18
2006 24 14 289226.4
2006 25 28 456131.62
2006 27 21 1859770.66
2006 28 21 1576900
2006 31 835 103873117.01
2006 32 34 9796238.82
2006 42 262 11281764.08
2006 50 30 2689122.13
2006 51 24 2147255.43
2006 52 106 4780833.52
2007 11 19 446508
2007 12 4 593448.29
2007 13 15 1826968.88
2007 14 1 95000
2007 15 38 3713560.37
2007 16 4 160000
2007 17 16 1266001.74
2007 21 37 3754528.93
2007 22 13 480375
2007 23 109 8850204.55
2007 24 16 1051344.27
2007 25 31 671050
2007 27 15 2038906.36
2007 28 18 1065560
2007 29 287 26206613.26
2007 32 36 8886921.86
2007 50 30 2641577.24
2007 51 37 1949789.59
2007 52 101 4116784
2007 53 229 18349576.93
2008 11 10 1370330
2008 12 7 655904.5
2008 13 24 750193.86
2008 15 42 1410040.9
2008 16 5 611927.2
2008 17 8 355858.89
2008 21 42 2578426.51
2008 23 101 11341428.19
2008 24 15 1368408.2
2008 25 36 1382416.16
2008 26 139 16898566.09
2008 27 16 1477331
2008 28 19 2142526.59
2008 29 242 19483683.924
2008 31 765 108650925.05
2008 32 32 7650131.71
2008 50 22 741775.65
2008 51 34 1340022.46
2008 52 123 4007510.08
2008 53 174 20382329.37
2009 11 5 562722
2009 12 4 25000
2009 13 14 714888.46
2009 14 2 0
2009 15 33 4149645.33
2009 16 1 142410.8
2009 17 2 0
2009 21 11 2017713.8
2009 22 7 2754726.19
2009 23 119 13760618.76
2009 24 10 989317.8
2009 25 16 1258091.75
2009 26 105 24654789.95
2009 27 11 159000
2009 28 8 1401105
2009 29 171 18212090.5
2009 31 690 89483276.97
2009 32 26 3499900.89
2009 33 1371 278573489.63
2009 35 1866 399415971.79
2009 41 260 26067364.88
2009 42 233 19877897.14
2009 43 417 56172592.58
2009 50 18 898470.5
2009 51 21 1772717.06
2009 52 79 3530510.64
2009 53 151 29946493.3
2010 11 7 867498
2010 12 3 60000
2010 13 20 3411898.19
2010 14 1 0
2010 15 50 22526871.89
2010 16 0 61000
2010 17 5 0
2010 21 22 10206013.78
2010 22 12 1957574.28
2010 23 119 16340775.46
2010 24 11 1645106
2010 25 24 1484181.01
2010 26 135 17991286.42
2010 27 8 698555.08
2010 28 9 1029839
2010 29 220 19731866.57
2010 31 729 125932922.55
2010 32 57 13901170.01
2010 33 1885 270918973.531
2010 41 295 37630315.42
2010 42 314 26237658.77
2010 43 537 69147505.12
2010 50 19 1524173.96
2010 51 42 1921992.84
2010 52 104 5350966.1
2010 53 179 23788665.02
2003 23 52 5510544.74
2003 33 1082 114527695.1
2003 43 179 24521444.14
2003 35 1231 169157089.33
2004 31 497 51122452.183
2004 26 128 8109262.763
2004 41 409 15132656.073
2004 33 1181 120210957.909
2004 43 266 39834566.98
2004 42 197 8576782.32
2004 35 1450 215266739.06
2005 42 252 11376809.481
2005 35 1782 290287724.34
2006 29 241 18320546.36
2006 53 236 18790543.277
2006 21 40 1710100.2
2006 26 123 18298419.42
2006 41 394 21176172.91
2006 33 1485 207813166.38
2006 43 418 48775920.01
2006 35 2013 360753874.16
2007 31 861 113151278.32
2007 26 159 18565149.54
2007 41 298 22022022.17
2007 33 1451 226644756.413
2007 43 471 59722687.04
2007 42 215 19608717.1
2007 35 1847 442010567.973
2008 22 14 3126776.609
2008 41 286 33600600.52
2008 33 1546 231060035.75
2008 14 3 92500
2008 43 467 59783943.57
2008 42 250 16263025.86
2008 35 2055 415104537.89
2010 35 2385 492106132.72
2011 12 2 90000
2011 27 9 1547016.99
2011 13 18 2133152.55
2011 16 4 20000
2011 29 333 16494931.76
2011 23 168 16523774.47
2011 53 210 23397498.38
2011 32 77 5899519.5
2011 52 129 8526974.29
2011 21 21 4257025.87
2011 31 825 127601435.44
2011 50 20 2447713.6
2011 51 57 4034516.87
2011 15 33 5689654.67
2011 25 46 1406920.72
2011 26 129 23580379.02
2011 22 15 3008677.03
2011 41 425 47013887.88
2011 33 1908 351462546.21
2011 24 19 1734862.5
2011 11 5 500000
2011 43 525 72510630.59
2011 42 322 31733322.36
2011 28 24 663986
2011 35 2586 571786989.08
2011 17 8 74378
2012 12 4 304374.82
2012 27 7 1178000
2012 13 17 1451747.24
2012 16 5 90000
2012 29 204 12773225.85
2012 23 125 13880272.54
2012 53 134 15871164.88
2012 32 46 7066045.53
2012 52 100 7611642.71
2012 21 18 1647128.75
2012 31 775 126983928.11
2012 50 25 2737417.78
2012 51 24 2119145.372
2012 15 39 5872158.68
2012 25 18 735570.9
2012 26 122 18104598.15
2012 22 10 2345162.5
2012 41 374 48964637.5
2012 33 1396 333485175.72
2012 24 19 3834778.07
2012 11 8 1000000
2012 14 1 110000
2012 43 462 64295433.56
2012 42 307 37008576.45
2012 28 13 1081276
2012 35 2089 563265073.69
2012 17 5 366972.5
2013 12 4 43931.46
2013 13 15 2720974.28
2013 29 190 11298782.25
2013 23 131 10902055.09
2013 53 146 11646268.29
2013 32 35 6853656.5
2013 52 109 3825082.75
2013 21 13 802488.3
2013 31 824 120521642.55
2013 50 22 337819.86
2013 51 32 1986709.95
2013 15 37 2073342.82
2013 25 21 266641.33
2013 26 111 15610136.43
2013 22 14 1483823.03
2013 41 416 48736170.77
2013 33 1326 289040661.34
2013 24 33 8583190.31
2013 11 9 1280807
2013 43 567 71054784.68
2013 42 304 33605285.39
2013 28 7 526715
2013 35 2062 506570766.96
2013 17 4 271753.93
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment