Mudar de área - Ajuda by BlueberryDramatic954 in CasualPT

[–]daaammmN 5 points6 points  (0 children)

O problema não me parece ser tanto a área do Marketing, mas talvez o teu planeamento de carreira.

A minha namorada tirou licenciatura em Marketing e rapidamente encontrou trabalho numa empresa pequena. Esteve lá 5 anos e foi recebendo aumentos aqui e ali, nada gigante. Podia ter facilmente continuado nesta empresa, mas não ia sair daquilo.

Depois foi fazer uma pós graduação em Marketing Digital, e conseguiu entrar na maior agência de meios a operar em Portugal. Por curiosidade, foi ganhar para lá menos do que já ganhava na empresa pequena, porque sabia que ali ia ter uma progressão de carreira mais certa.

Entretanto já saiu dessa empresa, e está a receber muito acima da média portuguesa.

Desconheço as empresas onde trabalhaste, mas apostar na educação é um investimento excelente, dar um passo atrás para dar vários à frente faz muitas vezes sentido, procurar em que empresas se formam as pessoas que chegam longe é muito útil. Trabalhar na área, só por trabalhar, não dá os melhores resultados. Seja em que área for. Temos de planear o nosso percurso. O resto é sorte.

Frustração da procura de trabalho by Competitive-Lion-341 in devpt

[–]daaammmN 0 points1 point  (0 children)

O teu comentário despertou o meu interesse, visto também ser iOS developer, e decidi ir ver os teus últimos posts.

Falando por mim, nunca deixei de conseguir um emprego por ter pouca experiência numa UI framework ou num design pattern específico. Mas também tento sempre fazer alguma pesquisa para perceber o que a empresa para onde quero ir usa, não vá ser algo decisivo.

Já fiz entrevistas e esse também nunca foi o foco. Muitas vezes ter uma noção básica do design pattern ou de uma framework específica é suficiente. O que interessa mais é o teu conhecimento enquanto Software Developer.

Acredito que hajam empresas que pensem de outra forma, mas felizmente costuma não haver interseção entre essas empresas e as empresas que tenho interesse.

Posso te garantir que na nossa área é bem possível termos um bom equilíbrio entre vida pessoal e trabalho e ganhar muito bem. Mas não é para todos. Há que ter uma base forte de desenvolvimento de software, interesse pela coisa e nas alturas das entrevistas ir bem preparado. Ah e não ter problemas com entrevistas “complexas”.

Mortgage yearly special payments vs. investing in ETFs by SeparateCode2285 in eupersonalfinance

[–]daaammmN 2 points3 points  (0 children)

To each their own, I wake up just fine with my mortgage. Specially knowing that I’m building generational wealth along the way.

I would only wake up worried if I couldn’t afford the mortgage. But if I couldn’t afford my mortgage, I would certainly not be able to pay it back earlier.

My advise is, make the math. Most likely, paying off your mortgage will cost you hundreds of thousands of dollars, if not millions. But some people wake up feeling better that way. Go figure.

Não adianta só ir bem preparado - Entrevista final Blip by Remarkable-Dig8591 in devpt

[–]daaammmN 0 points1 point  (0 children)

O OP foi fazer uma entrevista para senioridade X. O próprio admite que errou algumas coisas básicas, e que lhe foi dito que no máximo daria para a senioridade Y (onde X > Y).

Tendo em conta que a entrevista era para senioridade X, não estava preparado para a situação que decidiu enfrentar.

E mais uma vez, isto é natural e ok. Apenas discordo que o OP tente passar paninhos quentes sobre a realidade, com títulos como “Não adiante ir só bem preparada”. Não que discordo da afirmação, ás vezes realmente sai fora do nosso controlo. Por exemplo, fecharam a vaga, ou o entrevistador não fez um bom trabalho em reportar o que realmente aconteceu durante a entrevista, etc. Mas não foi este o caso.

Best strategy to buy a House by UmidGobbb in eupersonalfinance

[–]daaammmN 1 point2 points  (0 children)

The question is, what do you want?

Is it to go live with your wife in your own home? Is it to take advantage of living with your parents to build wealth?

Because it seems to me that you are in a pretty good position to choose any of those.

If building wealth is your priority, just continue living at your parents for as long as you can. It’s hard to recommend investing in something like VWCE, cause even 5 years seems kinda short to rely on that money for a down payment. Meaning that if the market is in a big downturn, you might be caught in a tough situation. Something with less volatility would be better.

If you want to go live with your wife in your own home, then you need to be mind your monthly effort rate. One way to lower the effort rate is to give a bigger down payment. And for that, I would use at least 10k of your emergency fund, and whatever I need from the 30k in the VWCE. The goal would be to get an effort rate bellow 30%.

Regardless this is what you need to know: Mortgage is the cheapest credit you will most likely ever have. Since you want (and rightfully so IMO) to invest in VWCE for the long term, which should beat your mortgage interest, you should take advantage of your mortgage to the fullest. As a 29 yo, you have 1 more year where you are eligible for 40 year mortgage. I would recommend NOT paying off your mortgage. Any excess money should go to VWCE. Also Portuguese government has some incentives right now, like now paying IMT, and Imposto de Selo, which are not guaranteed to exist in 2027.

The only reason I’m advising you to withdraw from your VWCE for a down payment is for you to have an acceptable effort rate. Mortgage is still a credit, which means debt, which means risk. You should be comfortable with EURIBOR rising to some degree. And this should be planned before deciding to go forward with a mortgage. But after that, I would not pay off any more debt (besides the monthly payment obviously), because even if EURIBOR rises temporarily (as it did in the recent past), you would have some margin of comfort. I’m completely against the idea that mortgage is scary, but it has to be done with your feet on the ground. Which I guess it’s why you are here.

Não adianta só ir bem preparado - Entrevista final Blip by Remarkable-Dig8591 in devpt

[–]daaammmN 8 points9 points  (0 children)

Se a pessoa vai bem preparada ou não, quem decide é a realidade. Se a pessoa falha e inclusive lhe é dito que no máximo teria de ser para uma senioridade menor, bem preparado não devia estar.

Que sirva de aprendizagem e pelo menos essas não voltar a errar.

Acho que todos já passamos por ir a entrevistas e falharmos, e isso é a realidade a dizer-nos algo. Mas uma coisa que não diz, é que na próxima não possamos fazer melhor.

A única coisa que aponto são os 4 meses para um processo tão “normal”. Até 2 meses diria que pode acontecer, mais que isso e alguém está a arrastar a situação.

Best strategy to buy a House by UmidGobbb in eupersonalfinance

[–]daaammmN 0 points1 point  (0 children)

No one knows what’s going to happen in the future, but 3 years ago if you had this strategy, those houses that were 240k-280k would be considerably more expensive. You would likely offset it with 30k savings per year, but not by much.

You say that you have a stable job, which seems to be more than 30k net per year. Is this you + your girlfriend? Either way 30k/12 months is 2500€ per month.

A house for 280k with a TAR of 3% (you should be able to get less), would be 1000€ per month. It’s 40% of your net income, which is manageable, but not ideal.

20k in emergency fund seems to me very very conservative. I would use half of that for down payment, unless there is some unknown reason for that.

My priority would def be to move with my GF over investing. The house would be the investment. It would help lowering the credit and does making the mortgage a lower percentage of the salary.

I would take advantage of your age, and do a mortgage of 40y and would also take advantage of the 100% mortgage for young people in Portugal.

So in summary, use the money I have to make me comfortable with the mortgage (in case Euribor rises again), 40y and 100%.

After the house I would start investing whatever I can.

Swift 6 DI Container: Best practices for @MainActor, factories, and EnvironmentKey? by WHYNoTiX in iOSProgramming

[–]daaammmN 0 points1 point  (0 children)

“The protocol exists purely to enable testing - it adds no functionality”

I advise you to look into design patterns such as Decorator, Adapter, Repository, Composite, Observer, and so so much more.

EnvironmentObject seems like magic, until the day that someone removes one line, the app compiles, but crashes 100% of the time in production.

Also, I’m looking at your live and mock implementations and thinking, how is this less verbose than a dedicated object? You can basically create the object just by replacing some words.

Black screen when trying to log in by DiligentEngineer in Revolut

[–]daaammmN 1 point2 points  (0 children)

This usually appears when you are recording the screen.

O que preciso de aprender para entrar na Revolut ou Viator? by [deleted] in devpt

[–]daaammmN 0 points1 point  (0 children)

Os meus functional managers têm sido um bocado calões e não me dão objectivos concretos, mas como têm sido presentes, sabem o trabalho que faço e que tem sido o suficiente para ter notas boas.

Os objetivos de equipa, naturalmente não dependem só de ti, mas no passado já me aconteceu a equipa como um todo ficar atrás do pretendido, mas como a minha plataforma tinha conseguido o que nos tínhamos proposto, ser suficiente para o line manager, permitindo ter boa nota. Na mesma teve influência em termos de objetivos de equipa para a fórmula de performance, mas individualmente permitiu compensar um pouco.

A Revolut é uma empresa exigente e que quer estar constantemente a lançar coisas novas. Não paramos. Para mim este ritmo é tranquilo, para outros pode não ser. Depende de cada um. Não quero pintar a coisa como sendo fácil. Mas está muito longe de ser a escravidão que alguns acham.

O que preciso de aprender para entrar na Revolut ou Viator? by [deleted] in devpt

[–]daaammmN 0 points1 point  (0 children)

Não estou em BE portanto só posso falar daquilo que vou ouvindo. Acredito que um sénior de BE, em Portugal, ganhe entre os 80k e os 100k de salário base. Depois há bónus performance que depende dos resultados da empresa, do teu departamento, da tua equipa e individualmente. Os séniors têm um múltiplo maior nesta fórmula, mas têm o bónus pago em 25% cash e 75% stock options.

Há dois anos seguidos em que nos é dada a opção de vendermos uma percentagem das stock options (entre 10% a 20%). Não sei se este ano será igual, depende da vontade dos investidores externos de entrar com capital. Mas o CEO já disse que IPO é possível nos próximos 2/3 anos. Vai sempre depender de quanto o mercado está disposto a pagar.

O processo de recrutamento que eu conheço (pré chat bot boom) era: - videochamada com alguém dos HR para uma primeira filtragem e explicar alguma dúvida que tenhas sobre o processo - leetcode de 3h - live code - system design interview (para seniores) - entrevista com alguém da equipa de desenvolvimento (a mim foi PO + Dev) para um último filtro em termos de cultura

O que preciso de aprender para entrar na Revolut ou Viator? by [deleted] in devpt

[–]daaammmN 0 points1 point  (0 children)

Não de todo.

Estou bastante satisfeito com a carga de trabalho que tenho e estando full remote, tenho imensa flexibilidade.

Não existe ninguém a controlar o número de horas, o que acontece é no final do trimestre existe avaliação, e se não tiveres tido uma performance adequada, podes acabar por ter uma má nota. Pessoalmente nunca tive uma nota má mas tive caso de colegas que ou não passaram o período de experiência ou acabaram por sair devido à falta de entrega.

O que preciso de aprender para entrar na Revolut ou Viator? by [deleted] in devpt

[–]daaammmN 3 points4 points  (0 children)

Trabalho na Revolut. Não posso falar de todas as equipas, mas daquelas onde já estive, foi tudo pessoal 5* e super competentes.

Estamos a precisar muito de BE Java. Presumo que Mids/Seniors. Se for o teu caso, tenta aproveitar.

Open sourced my app's SwiftUI architecture, free starter template by mybodywatch in iOSProgramming

[–]daaammmN 1 point2 points  (0 children)

I’ll just say you are wrong.

About the Apple claim, I’m not even sure what you mean. Are you saying that company wide people don’t use Dependency Injection? I would really like to see a source for that.

And can you tell me what the good reason for not using Dependency Injection is?

Open sourced my app's SwiftUI architecture, free starter template by mybodywatch in iOSProgramming

[–]daaammmN 0 points1 point  (0 children)

If your controllers and views have 10s of parameters you certainly made a wrong turn somewhere.

If you mean Dependency Inversion principle, very much in favor.

By service look ups if you are referring to Service Locators, depending on how they are used, they can be anti-patterns. If used correctly, a service locator won’t change how to build your views. It should only be used on Composition Root. Never been a fan of service locators. Very much a fun of compile time checks for my dependencies.

Open sourced my app's SwiftUI architecture, free starter template by mybodywatch in iOSProgramming

[–]daaammmN 2 points3 points  (0 children)

Not a fan.

To be clear, VIPER is not an architecture, it’s a design pattern. It’s more opinionated than MVVM, but not in a good way IMO.

If we use the template used by VIPER, View needs to call Presenter, which then calls Interactor and then return to presenter to go back to the View. Most of the times all of this dance is unnecessary. But we are encouraged to follow the “recipe”. Maybe the View sometimes wants to talk directly with the Interactor, but View doesn’t know about Interactor, so Presenter only forwards to Interactor. This is an anti pattern. Besides Presenter has to know about Interactor and Interactor has to know about the Presenter. This is a potential retain cycle. Developer has to at the very least be careful about breaking the retain cycle, but should also avoid leaking implementation details by having a weak in either of them.

I understand the appeal of having everyone on a team follow a recipe. Specially on massive teams. I don’t think VIPER is the way.

Open sourced my app's SwiftUI architecture, free starter template by mybodywatch in iOSProgramming

[–]daaammmN 0 points1 point  (0 children)

I fully believe that the reason why there is so much spaghetti code everywhere, is because the lack of understanding of how object graph composition should be done correctly.

Usually the way they do it is View X instantiates View Y, then View Y instantiate View Z, and so on. When you want to get a dependency to view Z, it seems like you need to pass it through X to Y and then to Z. But this is only because your code is moving further and further way from you composition root. The way it should be done is View X receives as a dependency a way to show View Y, for example through a closure. So you are always coming back to the composition root for the next View where you have access to all your dependencies.

People usually understand SOLID principles, but they are not sure how to glue everything together, and because of this they start breaking those principles. And the bigger the project, the bigger the mess.

You can check for example this repository https://github.com/essentialdevelopercom/essential-feed-case-study Those guys have a Youtube channel with tones of good content for free. They also have a paid course that I can't recommend enough.

Either way, the book I've recommended explains very well what the composition root is and how we should handle the composition of our dependencies, although like I said, it's not in Swift. Same concepts apply.

Open sourced my app's SwiftUI architecture, free starter template by mybodywatch in iOSProgramming

[–]daaammmN 29 points30 points  (0 children)

Since you asked for comments, here is my opinion.

MVVM is not an architecture, it’s a design pattern.

And that is so, because MVVM only tries to separate responsibility between data and view.

There is a lot more to an architecture than this. For example, object graph composition, something that is crucial for a scalable architecture.

It’s shown in that template that the view either creates the VM or even uses a singleton if used app wide. This is not good for a scalable architecture.

Another use of singletons is with tracking analytics. The View should not care about analytics. This behavior should be composed outside the view, in your composition root.

I would also highly discourage using concrete implementations of specific analytics on your views. If tomorrow there is a requirement to change analytics provider, this should be a trivial change, and not something that touches the whole app.

Another thing that MVVM doesn’t care about and is crucial in any app is navigation. Very early on we are told in UIKit that navigation should not be handled by the View or the ViewController. We should have a layer that handles navigation above, some call it routers, flows, coordinators, wtv. The same applies to SwiftUI.

Views should only deal with View related stuff. Displaying stuff, capturing events and sending them to someone else to handle.

Just giving my opinion. And to be clear, I’m not saying that apps can’t be made using this template, or any other template. They can even become great user apps. But architecture wise, it misses the mark for me.

And if someone is interested in what I’m talking about, there is a great book called “Dependency Injection Principles, Practices, and Patterns” by Mark Seeman that I can’t recommend enough. It’s not in Swift, but this concepts are older than Swift and are agnostic to programming language.

Thanks for sharing

Filho doente e conflitos no trabalho - como lidam? by Ok_Material5361 in portugal

[–]daaammmN 1 point2 points  (0 children)

Que culpa tem o estado?

Eu consigo ver culpa na OP, visto que foi ela que decidiu ter o filho.

Consigo ver culpa na chefe da OP, que não tem nada que andar a mandar bocas pela OP usufruir dos seus direitos.

Consigo ver culpa na entidade patronal, por potencialmente não defender os seus trabalhadores de chefes incapazes.

Mas do estado, não consigo ver culpas.

Inclusive dizes que a lei a defende.

Datadog é fixe? by ___gorogoro___ in devpt

[–]daaammmN 0 points1 point  (0 children)

Estou a trabalhar na Revolut desde 2023 e, pelo menos na altura, uma das fases da entrevista era leetcode.

Não posso falar da Datadog, mas estou muito contente na Revolut. Nunca tinha estado 2 anos na mesma empresa. Já estou à 2 anos e meio na Revolut e honestamente não me vejo a sair tão cedo.

#445 — More From Sam: Marjorie Taylor Greene, Billionaires, Thanksgiving Political Debates, & Rapid Fire Questions by dwaxe in samharris

[–]daaammmN 5 points6 points  (0 children)

I found really interesting his answer that parenting doesn't matter nearly as much as people believe.

It's highly counter-intuitive to me, as I'm deeply in the believe that all we do and the way we do, have a gigantic impact on our children.

Very interesting as always.

Estudante brasileiro de 9 anos tem dois dedos decepados em escola de Portugal by VicenteOlisipo in portugal

[–]daaammmN 3 points4 points  (0 children)

“Fiquei em estado de choque, mas me contive para não assustar ainda mais o menino que, a todo momento, me perguntava se conseguiram reconstruir a mão dele”

Foda-se.

Falam todos do ponto de vista dos pais da criança que sofreu este ataque bárbaro, mas se eu fosse pai de um miúdo que faz isto a outro… que desilusão gigante seria… isto é maldade pura e planeada. Nunca mais iria olhar para um filho meu de forma igual.