Rio de Janeiro, Rio de Janeiro, Brazil
Possui 35 anos de experiência em desenvolvimento de software, consultoria, pré-venda técnica, arquitetura de software e desenho de produtos. Trabalhou em projetos para clientes como: Método, Accenture, EMSA, Shell Brasil, Mesbla Serviços Financeiros, Banco Econômico, Banco do Brasil, Unibanco, Banerj, Bradesco, Banco Icatu, Petrobras, Cenpes, Equitel, Banco Pan-Americano, Gtech, White Martins, Proceda, Mercedez-Benz, Marítima Seguradora, MAE, ATX Software (Portugal), Banco Espirito Santo (Portugal), Ministério da Saúde, Detran-RJ, BR, Montreal, Lipman, Sagem, Intellect, Perto, Visanet(Peru), Prosa (Mex), Hebara, Mastercard (Belgica), Gemalto, Itautec, Banrisul, First Data, Unimed-RJ, Ipiranga, Zolkin, Cielo, Muxi. Experiência como consultor em ambiente Java para Web. Experiência em solucionar problemas desafiadores em sistemas embarcados escritos em C. Experiência em desenvolvimento de software para indústria de pagamento (tanto do lado do cliente como do lado do servidor). Foi Professor da UGF e da PUC-Rio. Desde 2015 é professor do IME em tempo integral, onde ministra disciplinas nos níveis de graduação e pós-graduação, supervisiona monografias de graduação e pós-graduação, organiza eventos científicos e participa em variados projetos de pesquisa. Interesse em teoria da computação, linguagens de programação, pagamentos eletrônicos, data science, e segurança de software.
Teach courses in the areas of programming languages, theory of computation and information security at both undergraduate and graduate levels; Develop an instructional plan for the courses I teach; Assess students' coursework; set and mark examinations; Work with colleagues to develop or modify the curriculum for a degree involving a series of courses; Supervise undergraduate students in research projects; Supervise graduate students who are working toward master/doctoral degrees; Stay informed about innovations and conduct research and experiments to advance knowledge in my field of expertise (Programming Languages, Theory of Computation, Information Security); writing up research and preparing it for publication; carrying out administrative tasks related to the department, such as student admissions and involvement in committees and boards;
Understand how architectural decisions relates to to business and technical strategy. Define, document and communicate architectural decisions. Understand the needs of the stakeholders and make sure they are being met. Manage risk identification and risk mitigation strategies associated with the architecture. Resolve technical problems. Train technical team. System specification, manage non-functional requirements, specially security.