Conteúdo / Ideias em diferentes formatos
Conhecimento para
ampliar sua perspectiva.
O que escrevo, ensino e compartilho sobre engenharia de software, pesquisa, educação e carreira. Tudo em um só lugar.
88 conteúdos disponíveis
Agentes de IA no código aberto: uma síntese do MSR 2026
O que 62 estudos revelam sobre qualidade, revisão, testes e integração das contribuições de agentes de IA em projetos de código aberto.
Ler artigo : Agentes de IA no código aberto: uma síntese do MSR 2026Design em escala: desafios, armadilhas e aprendizados (DESIGNING 2026)
Decisões de arquitetura em sistemas de grande escala: desafios, armadilhas e lições de escolhas reais.
Ver palestra : Design em escala: desafios, armadilhas e aprendizados (DESIGNING 2026)Seleção de testes na Adyen: economizando tempo e recursos
Se você trabalha em um sistema de software de grande escala, é provável que uma parte significativa de sua construção seja destinada à execução de testes. Muitas vezes acon...
Conhecer artigo : Seleção de testes na Adyen: economizando tempo e recursosSeleção de testes na Adyen
Como implementamos a seleção de testes na Adyen para reduzir execuções desnecessárias e acelerar os pipelines.
Ver palestra : Seleção de testes na AdyenEstratégias de testes em escala
Os desafios de evoluir estratégias de testes conforme os sistemas e as organizações crescem.
Ver palestra : Estratégias de testes em escalaAs vantagens de um doutorado em engenharia de software na indústria
Como as habilidades desenvolvidas no doutorado ajudam a resolver problemas complexos, comunicar ideias e gerar impacto na indústria.
Ler artigo : As vantagens de um doutorado em engenharia de software na indústriaDesign orientado a objetos simples
Princípios para controlar a complexidade e construir software orientado a objetos mais simples.
Ver palestra : Design orientado a objetos simplesAdyen Tech Academy: integração e capacitação de engenheiros
Ajudar os engenheiros a se atualizarem rapidamente e a melhorarem ainda mais seu trabalho é uma obrigação para qualquer empresa de tecnologia. É também um enorme desafio. F...
Conhecer artigo : Adyen Tech Academy: integração e capacitação de engenheirosDa indústria à academia e de volta: o que aprendi?
O que aprendi ao transitar entre indústria e academia, conectando pesquisa, educação e desenvolvimento de software.
Ver palestra : Da indústria à academia e de volta: o que aprendi?Testes eficazes para desenvolvedores: lições que aprendi ao longo do tempo
Lições sobre testes de software eficazes e como conectar técnicas sistemáticas ao trabalho de desenvolvimento.
Ver palestra : Testes eficazes para desenvolvedores: lições que aprendi ao longo do tempoAprendizado de máquina pode ajudar desenvolvedores? Aventuras de um pesquisador
As possibilidades do aprendizado de máquina para apoiar desenvolvedores em tarefas de engenharia de software.
Ver palestra : Aprendizado de máquina pode ajudar desenvolvedores? Aventuras de um pesquisadorTestKnight: An Interactive Assistant to Stimulate Test Engineering
O teste de software é um dos aspectos mais importantes do desenvolvimento de software moderno. Para garantir a qualidade do software, o ideal é que os desenvolvedores escre...
Ver publicação : TestKnight: An Interactive Assistant to Stimulate Test EngineeringComo a cobertura de testes pode ser usada e mal utilizada
Uma palestra sobre as possibilidades e os limites da cobertura de testes como medida de qualidade.
Ver palestra : Como a cobertura de testes pode ser usada e mal utilizadaData-Driven Extract Method Recommendations: A Study at ING
A identificação sólida de oportunidades de refatoração ainda é um problema em aberto na engenharia de software. Estudos recentes têm demonstrado a eficácia dos modelos de a...
Ver publicação : Data-Driven Extract Method Recommendations: A Study at INGLog-based Software Monitoring: A Systematic Mapping Study
O desenvolvimento e as operações de software moderno dependem do monitoramento para entender como os sistemas se comportam na produção. Os dados fornecidos pelos logs de ap...
Ver publicação : Log-based Software Monitoring: A Systematic Mapping StudyLogging Practices with Mobile Analytics: An Empirical Study on Firebase
Os logs de software são de grande valor em projetos industriais e de código aberto. O registro de análise móvel permite que os desenvolvedores coletem registros dos usuário...
Ver publicação : Logging Practices with Mobile Analytics: An Empirical Study on FirebaseInteractive Static Software Performance Analysis in the IDE
Detectar problemas de desempenho devido a código abaixo do ideal durante o processo de desenvolvimento pode ser uma tarefa difícil, especialmente quando se trata de localiz...
Ver publicação : Interactive Static Software Performance Analysis in the IDEAtoms of Confusion in Java
Embora escrever código às vezes pareça trivial, surgem problemas quando os humanos interpretam mal o que o código realmente faz. Uma das causas potenciais são os “átomos de...
Ver publicação : Atoms of Confusion in JavaHow Developers Engineer Test Cases: An Observational Study
Um dos principais desafios que os desenvolvedores enfrentam ao testar seus sistemas reside em casos de testes de engenharia que sejam bons o suficiente para revelar bugs. E...
Ver publicação : How Developers Engineer Test Cases: An Observational StudyAn Exploratory Study of Log Placement Recommendation in an Enterprise System
O registro em log é uma prática de desenvolvimento que desempenha um papel importante nas operações e no monitoramento de sistemas complexos. Os desenvolvedores colocam ins...
Ver publicação : An Exploratory Study of Log Placement Recommendation in an Enterprise SystemLearning Off-By-One Mistakes: An Empirical Study
Erros em condições binárias são uma fonte de erros em muitos sistemas de software. Eles acontecem quando os desenvolvedores usam, por exemplo, < or > em vez de <= ...
Ver publicação : Learning Off-By-One Mistakes: An Empirical StudyThe Prevalence of Code Smells in Machine Learning projects
A Inteligência Artificial (IA) e o Aprendizado de Máquina (ML) estão difundidos no cenário atual da ciência da computação. No entanto, ainda existe uma falta de experiência...
Ver publicação : The Prevalence of Code Smells in Machine Learning projectsO que aprendi ao inverter minha sala de aula
Lições de uma experiência de sala de aula invertida no ensino de testes de software na TU Delft.
Ler artigo : O que aprendi ao inverter minha sala de aulaSearch-Based Software Re-Modularization: A Case Study at Adyen
Decidir o que constitui um único módulo, quais classes pertencem a qual módulo ou o conjunto certo de módulos para um sistema de software específico sempre foi uma tarefa d...
Ver publicação : Search-Based Software Re-Modularization: A Case Study at AdyenAutomatically Identifying Parameter Constraints in Complex Web APIs: A Case Study at Adyen
As APIs da Web podem ter restrições de parâmetros, de modo que nem todos os parâmetros são sempre obrigatórios ou sempre opcionais. Além disso, a presença ou o valor de um ...
Ver publicação : Automatically Identifying Parameter Constraints in Complex Web APIs: A Case Study at AdyenGrading 600+ students: A Case Study on Peer and Self Grading
Classificar turmas grandes tornou-se uma tarefa desafiadora e cara para muitas universidades. A Universidade de Tecnologia de Delft (TU Delft), localizada na Holanda, obser...
Ver publicação : Grading 600+ students: A Case Study on Peer and Self GradingThe Effectiveness of Supervised Machine Learning Algorithms in Predicting Software Refactoring
Refatoração é o processo de alteração da estrutura interna do software para melhorar sua qualidade sem modificar seu comportamento externo. Antes de realizar atividades de ...
Ver publicação : The Effectiveness of Supervised Machine Learning Algorithms in Predicting Software RefactoringSelecting third-party libraries: The practitioners' perspective
A seleção de bibliotecas de terceiros é um elemento essencial de praticamente qualquer projeto de desenvolvimento de software. No entanto, decidir quais bibliotecas escolhe...
Ver publicação : Selecting third-party libraries: The practitioners' perspectiveOffSide: Learning to Identify Mistakes in Boundary Conditions
Erros nas condições de contorno são a causa de muitos bugs no software. Esses erros acontecem quando, por exemplo, os desenvolvedores fazem uso de ‘<’ or ‘>’ nos caso...
Ver publicação : OffSide: Learning to Identify Mistakes in Boundary ConditionsDomain-Based Fuzzing for Supervised Learning of Anomaly Detection in Cyber-Physical Systems
Uma nova abordagem é proposta para a construção de modelos de detectores de anomalias utilizando aprendizagem supervisionada a partir dos traços de operações normais e anor...
Ver publicação : Domain-Based Fuzzing for Supervised Learning of Anomaly Detection in Cyber-Physical SystemsTestes em produção: uma introdução à pesquisa em monitoramento de software
Pesquisa em monitoramento de software e os desafios de entender o comportamento de sistemas em produção.
Ver palestra : Testes em produção: uma introdução à pesquisa em monitoramento de softwareComprehending Test Code: An Empirical Study
Os desenvolvedores gastam grande parte de seu tempo e esforço na compreensão do código-fonte. Embora muitos estudos tenham investigado como os desenvolvedores abordam essas...
Ver publicação : Comprehending Test Code: An Empirical StudyCurrent Challenges in Practical Object-Oriented Software Design
De acordo com o extenso corpo de conhecimento de 50 anos em programação e design orientado a objetos, bons designs de software são, entre outras características, pouco acop...
Ver publicação : Current Challenges in Practical Object-Oriented Software DesignAn Empirical Catalog of Code Smells for the Presentation Layer of Android Apps
Os desenvolvedores de software, incluindo os da plataforma móvel Android, buscam constantemente melhorar a manutenibilidade e evolução de seus aplicativos. Os code smells s...
Ver publicação : An Empirical Catalog of Code Smells for the Presentation Layer of Android AppsMonitoring-Aware IDEs
A engenharia de software moderno em grande escala exige que os desenvolvedores de software não se concentrem apenas em escrever código, mas também examinem continuamente os...
Ver publicação : Monitoring-Aware IDEsTracing Back Log Data to its Log Statement: From Research to Practice
Os logs são amplamente utilizados como fonte de informação para compreender a atividade dos sistemas de computador e monitorar sua saúde e estabilidade. No entanto, a maior...
Ver publicação : Tracing Back Log Data to its Log Statement: From Research to PracticePragmatic Software Testing Education
O teste de software é um tópico importante no ensino de engenharia de software e, ainda assim, altamente desafiador do ponto de vista educacional: os alunos são obrigados a...
Ver publicação : Pragmatic Software Testing EducationFactors Affecting Cloud Infra-Service Development Lead Times: A Case Study at ING
O desenvolvimento de infra-serviços em nuvem mudou na última década na direção de um processo de desenvolvimento de código de software, também conhecido como infraestrutura...
Ver publicação : Factors Affecting Cloud Infra-Service Development Lead Times: A Case Study at INGTestar é diferente de escrever testes
Escrever testes dá confiança para desenvolver. Testar de verdade exige explorar limites, exceções e cenários que revelam bugs.
Ler artigo : Testar é diferente de escrever testesUnusual Events in GitHub Repositories
Em projetos de software grandes e ativos, torna-se impraticável para um desenvolvedor ficar atento a todas as atividades do projeto. Embora possa não ser necessário saber s...
Ver publicação : Unusual Events in GitHub RepositoriesUnderstanding Developers’ Needs on Deprecation as a Language Feature
A descontinuação é um recurso de linguagem que permite aos produtores de API marcar um recurso como obsoleto. Nosso objetivo é obter uma compreensão profunda das necessidad...
Ver publicação : Understanding Developers’ Needs on Deprecation as a Language FeatureWhen Testing Meets Code Review: Why and How Developers Review Tests
O teste automatizado é considerado um processo essencial para garantir a qualidade do software. No entanto, escrever e manter código de teste de alta qualidade é desafiador...
Ver publicação : When Testing Meets Code Review: Why and How Developers Review TestsPyDriller: Python Framework for Mining Software Repositories
Os repositórios de software contêm informações históricas e valiosas sobre o desenvolvimento geral de sistemas de software. Repositórios de software de mineração (MSR) são ...
Ver publicação : PyDriller: Python Framework for Mining Software RepositoriesHow Modern News Aggregators Help Development Communities Shape and Share Knowledge
Muitos desenvolvedores contam com sites agregadores de notícias modernos, como reddit e hackernews, para se manterem atualizados com os mais recentes desenvolvimentos e ten...
Ver publicação : How Modern News Aggregators Help Development Communities Shape and Share KnowledgeMock objects for testing java systems: Why and how developers use them, and how they evolve
Ao testar artefatos de software que possuem diversas dependências, tem-se a possibilidade de instanciar essas dependências ou usar objetos simulados para simular o comporta...
Ver publicação : Mock objects for testing java systems: Why and how developers use them, and how they evolveWhere does Google find API documentation?
A documentação de APIs populares está espalhada por vários formatos, desde documentação de referência com curadoria de fornecedores até threads Stack Overflow. Para os dese...
Ver publicação : Where does Google find API documentation?An Exploratory Study on Faults in Web API Integration in a Large-Scale Payment Company
As arquiteturas orientadas a serviços são mais populares do que nunca e cada vez mais empresas e organizações dependem de serviços oferecidos por meio de APIs Web. Os recur...
Ver publicação : An Exploratory Study on Faults in Web API Integration in a Large-Scale Payment CompanySearch-Based Test Data Generation for SQL Queries
Os sistemas centrados em banco de dados dependem fortemente de consultas SQL para gerenciar e manipular seus dados. Esses comandos SQL podem variar desde seleções muito sim...
Ver publicação : Search-Based Test Data Generation for SQL QueriesThe Adoption of JavaScript Linters in Practice: A Case Study on ESLint
Um linter é uma ferramenta de análise estática que alerta os desenvolvedores de software sobre possíveis erros de código ou violações dos padrões de codificação. Ao usar es...
Ver publicação : The Adoption of JavaScript Linters in Practice: A Case Study on ESLintO que sabemos (e o que não sabemos) sobre Domain-Driven Design?
Uma análise das dúvidas de desenvolvedores sobre DDD: padrões, implementação e a distância entre design tático e estratégico.
Ler artigo : O que sabemos (e o que não sabemos) sobre Domain-Driven Design?To Mock or Not To Mock? An Empirical Study on Mocking Practices
Ao escrever testes de unidade automatizados, os desenvolvedores geralmente lidam com artefatos de software que possuem diversas dependências. Nestes casos, tem-se a possibi...
Ver publicação : To Mock or Not To Mock? An Empirical Study on Mocking PracticesA Collaborative Approach to Teaching Software Architecture
Ensinar arquitetura de software é difícil. O tema é abstrato e é melhor compreendido vivenciando-o, o que requer escala adequada para compreender plenamente sua complexidad...
Ver publicação : A Collaborative Approach to Teaching Software ArchitectureAn Experience Report on Applying Passive Learning in a Large-Scale Payment Company
As técnicas de aprendizagem passiva inferem modelos gráficos sobre o comportamento de um sistema a partir de grandes registros de rastreamento. A comunidade de pesquisa tem...
Ver publicação : An Experience Report on Applying Passive Learning in a Large-Scale Payment CompanyWhy and How JavaScript Developers Use Linters
Ferramentas automáticas de análise estática ajudam os desenvolvedores a identificar automaticamente problemas de código em seus softwares. Eles podem ser de extremo valor e...
Ver publicação : Why and How JavaScript Developers Use LintersCode smells for Model-View-Controller architectures
Estudos anteriores mostraram os efeitos negativos que o código de baixa qualidade pode ter nos proxies de manutenção, como a propensão a alterações de código e a defeitos. ...
Ver publicação : Code smells for Model-View-Controller architecturesA Validated Set of Smells in Model-View-Controller Architecture
Os code smells são sintomas de escolhas inadequadas de design e implementação que podem prejudicar a compreensão do código e possivelmente aumentar a propensão a mudanças e...
Ver publicação : A Validated Set of Smells in Model-View-Controller ArchitectureDevelopers' Perceptions on Object-Oriented Design and System Architecture
Os desenvolvedores de software geralmente contam com padrões de arquitetura de software bem conhecidos, como MVC, para construir seus aplicativos. Em muitos desses padrões,...
Ver publicação : Developers' Perceptions on Object-Oriented Design and System ArchitectureSATT: Tailoring Code Metric Thresholds for Different Software Architectures
A análise métrica de código é uma abordagem bem conhecida para avaliar a qualidade de um sistema de software. No entanto, as ferramentas e técnicas atuais não levam em cons...
Ver publicação : SATT: Tailoring Code Metric Thresholds for Different Software ArchitecturesDoes test-driven development improve class design? A qualitative study on developers’ perceptions
Antecedentes: Os desenvolvedores comumente afirmam que escrever testes unitários melhora a qualidade interna de um software, além de ter um efeito mais óbvio na qualidade e...
Ver publicação : Does test-driven development improve class design? A qualitative study on developers’ perceptionsImproving Code Quality on Automated Tests of Web Applications: A Set of Patterns
Existem diferentes níveis de testes automatizados, como unidade, integração ou sistema testando. Ao lidar com aplicações web, o ato de escrever testes automatizados geralme...
Ver publicação : Improving Code Quality on Automated Tests of Web Applications: A Set of PatternsPreparing for a Test Driven Development Session
O desenvolvimento orientado a testes (TDD) é uma técnica de desenvolvimento usada para projetar classes em um sistema de software, primeiro criando testes antes de implemen...
Ver publicação : Preparing for a Test Driven Development SessionAre the Methods in Your Data Access Objects (DAOs) in the Right Place? A Preliminary Study
Isolar o código que trata da infraestrutura do sistema do código que trata das regras de domínio é uma boa prática ao desenvolver aplicativos. O código que lida com o banco...
Ver publicação : Are the Methods in Your Data Access Objects (DAOs) in the Right Place? A Preliminary StudyMetricMiner: Supporting Researchers in Mining Software Repositories
Pesquisadores utilizam técnicas de repositório de software de mineração (MSR) para estudar engenharia de software de forma empírica, por meio de análise de artefatos, como ...
Ver publicação : MetricMiner: Supporting Researchers in Mining Software RepositoriesWhat Do the Asserts in a Unit Test Tell Us about Code Quality? A Study on Open Source and Industrial Projects
Os testes de unidade e o código de produção estão intrinsecamente conectados. Uma classe fácil de testar geralmente apresenta características desejáveis, como baixo acoplam...
Ver publicação : What Do the Asserts in a Unit Test Tell Us about Code Quality? A Study on Open Source and Industrial ProjectsIncreasing Learning in an Agile Environment: Lessons Learned in an Agile Team
O aprendizado é uma parte importante do processo de desenvolvimento de software. Há muitas vantagens para os desenvolvedores dispostos a aprender: maior qualidade interna e...
Ver publicação : Increasing Learning in an Agile Environment: Lessons Learned in an Agile TeamMost common mistakes in test-driven development practice: Results from an online survey with developers
O desenvolvimento orientado a testes (TDD) é uma prática de desenvolvimento de software que supostamente leva a melhor qualidade e menos defeitos no código. TDD é uma práti...
Ver publicação : Most common mistakes in test-driven development practice: Results from an online survey with developersAcademia e indústria — The Wise Dev
Uma entrevista sobre os caminhos da academia e da indústria na engenharia de software.
Conhecer episódio : Academia e indústria — The Wise DevAntipadrões de testes — Codurance
Minha participação em uma conversa sobre antipadrões de testes de software.
Conhecer episódio : Antipadrões de testes — CoduranceAprendizado de máquina em engenharia de software
Uma conversa sobre o uso de aprendizado de máquina em problemas de engenharia de software.
Conhecer episódio : Aprendizado de máquina em engenharia de softwareCarreira acadêmica em TI — Lambda3
Minha participação no episódio 277 da Lambda3 sobre carreira acadêmica em tecnologia.
Conhecer episódio : Carreira acadêmica em TI — Lambda3Coding Agents na prática: Claude Code, Cursor e companhia
Minha participação no Hipsters.tech #511 sobre o uso de agentes de IA no desenvolvimento de software.
Conhecer episódio : Coding Agents na prática: Claude Code, Cursor e companhiaCriando uma Tech Academy — Tech Leadership Rocks
Uma conversa sobre a criação de uma Tech Academy e educação em engenharia de software.
Conhecer episódio : Criando uma Tech Academy — Tech Leadership RocksDesign orientado a objetos com Laurentiu Spilca
Uma entrevista sobre design orientado a objetos e as decisões que fazem parte do desenvolvimento de software.
Conhecer episódio : Design orientado a objetos com Laurentiu SpilcaDesign orientado a objetos simples — Tech Lead Journal #177
Uma conversa sobre princípios para escrever software limpo e fácil de manter, a partir de Simple Object-Oriented Design.
Conhecer episódio : Design orientado a objetos simples — Tech Lead Journal #177Design patterns — Hipsters.tech #206
Uma participação no Hipsters.tech sobre padrões de design de software.
Conhecer episódio : Design patterns — Hipsters.tech #206Escalabilidade dos testes — Hillside PatternCast
Uma conversa sobre como lidar com os desafios de escala dos testes de software.
Conhecer episódio : Escalabilidade dos testes — Hillside PatternCastEstratégias de testes e Dev Leaders — Hipsters.tech #367
Uma conversa sobre estratégias de testes de software no Hipsters.tech.
Conhecer episódio : Estratégias de testes e Dev Leaders — Hipsters.tech #367IA para testes de software — HIDEV
Uma participação no HIDEV sobre a relação entre inteligência artificial e testes de software.
Conhecer episódio : IA para testes de software — HIDEVO que a maioria dos engenheiros entende errado sobre testes
Minha participação no episódio 191 do Beyond Coding, em uma conversa sobre testes de software.
Conhecer episódio : O que a maioria dos engenheiros entende errado sobre testesPesquisa em engenharia de software — Hipsters.tech #84
Uma conversa sobre pesquisa em engenharia de software e sua relação com a prática.
Conhecer episódio : Pesquisa em engenharia de software — Hipsters.tech #84SOLID: código bom e bonito — Hipsters.tech #219
Minha participação no Hipsters.tech sobre os princípios SOLID e design de software.
Conhecer episódio : SOLID: código bom e bonito — Hipsters.tech #219Test-Driven Development — Lambda3
Minha participação no podcast da Lambda3 sobre desenvolvimento guiado por testes.
Conhecer episódio : Test-Driven Development — Lambda3Testes automatizados — Hipsters.tech #51
Uma conversa sobre testes automatizados de software no Hipsters.tech.
Conhecer episódio : Testes automatizados — Hipsters.tech #51Testes eficazes para desenvolvedores — Tech Lead Journal #139
Minha participação no Tech Lead Journal sobre as ideias do livro Effective Software Testing.
Conhecer episódio : Testes eficazes para desenvolvedores — Tech Lead Journal #139Testes eficazes — Software Engineering Unlocked
Uma conversa sobre testes de software e a busca por bugs no dia a dia de desenvolvimento.
Conhecer episódio : Testes eficazes — Software Engineering UnlockedUma conversa sobre TDD — Bluesoft
Uma conversa sobre Test-Driven Development, disponível no canal da Bluesoft.
Conhecer episódio : Uma conversa sobre TDD — BluesoftUma conversa sobre engenharia de software — HIDEV
Minha entrevista no HIDEV, disponível na íntegra no Spotify.
Conhecer episódio : Uma conversa sobre engenharia de software — HIDEVUma entrevista com Adolfo Neto
Uma conversa com Adolfo Neto, disponível em vídeo no YouTube.
Conhecer episódio : Uma entrevista com Adolfo NetoNenhum conteúdo encontrado.
Tente outro termo ou escolha outra categoria.