Un programador es todo aquel que vive de la programación. La aproximación a la profesión es diferente en cada persona, puede que provenga de ingenierías, formación profesional, módulos, estudios no técnicos, bootcamps… En muchos casos hay gran inconsciencia del desconocimiento.
Por tanto cuando una persona se incorpora a una empresa puede haber grandes deficiencias formativas, incluso siendo profesionales completamente funcionales y competentes, por lo que se hace necesario unificar niveles de conocimiento, crear sentimientos de pertenencia y ayuda al grupo y definir qué es ser un buen profesional y cuando estamos haciendo una verdadera entrega de valor a los clientes.
Si nos planteamos la vida profesional como un juego deberíamos ser consciente cuales son las pantallas que dan paso a distintos niveles de ese juego.
Presto is an open source distributed SQL query engine for running interactive analytic queries against data sources of all sizes ranging from gigabytes to petabytes.
Query optimizers and people have one thing in common: the better they understand their data, the better they can do their jobs. Optimizing queries is hard if you don't have good estimates for the sizes of the intermediate join and aggregate results. Data profiling is a technique that scans data, looking for patterns within the data such as keys, functional dependencies, and correlated columns. These richer statistics can be used in Apache Calcite's query optimizer, and the projects that use it, such as Apache Hive, Phoenix and Drill. We describe how we built a data profiler as a table function in Apache Calcite, review the recent research and algorithms that made it possible, and show how you can use the profiler to improve the quality of your data.
Presto is an open source distributed SQL query engine for running interactive analytic queries against data sources of all sizes ranging from gigabytes to petabytes. Presto was designed and written from the ground up for interactive analytics and approaches the speed of commercial data warehouses while scaling to the size of organizations like Facebook. One key feature in Presto is the ability to query data where it lives via a uniform ANSI SQL interface. Presto’s connector architecture creates an abstraction layer for anything that can be expressed in a row-like format, such as HDFS, Amazon S3, Azure Storage, NoSQL stores, relational databases, Kafka streams and even proprietary data stores. Furthermore, a single Presto query can combine data from multiple sources, allowing for analytics across your entire organization.
This talk will be co-presented by Facebook and Teradata, the two largest contributors to Presto. The talk will focus on Presto’s ability to query virtually any data source via it’s connector interface. Facebook and Teradata will present some of their use cases of Presto querying various data sources, discuss the existing connectors in Presto, and describe the anatomy of a connector.
Presto is an open source distributed SQL query engine for running interactive analytic queries against data sources of all sizes ranging from gigabytes to petabytes.
Query optimizers and people have one thing in common: the better they understand their data, the better they can do their jobs. Optimizing queries is hard if you don't have good estimates for the sizes of the intermediate join and aggregate results. Data profiling is a technique that scans data, looking for patterns within the data such as keys, functional dependencies, and correlated columns. These richer statistics can be used in Apache Calcite's query optimizer, and the projects that use it, such as Apache Hive, Phoenix and Drill. We describe how we built a data profiler as a table function in Apache Calcite, review the recent research and algorithms that made it possible, and show how you can use the profiler to improve the quality of your data.
Presto is an open source distributed SQL query engine for running interactive analytic queries against data sources of all sizes ranging from gigabytes to petabytes. Presto was designed and written from the ground up for interactive analytics and approaches the speed of commercial data warehouses while scaling to the size of organizations like Facebook. One key feature in Presto is the ability to query data where it lives via a uniform ANSI SQL interface. Presto’s connector architecture creates an abstraction layer for anything that can be expressed in a row-like format, such as HDFS, Amazon S3, Azure Storage, NoSQL stores, relational databases, Kafka streams and even proprietary data stores. Furthermore, a single Presto query can combine data from multiple sources, allowing for analytics across your entire organization.
This talk will be co-presented by Facebook and Teradata, the two largest contributors to Presto. The talk will focus on Presto’s ability to query virtually any data source via it’s connector interface. Facebook and Teradata will present some of their use cases of Presto querying various data sources, discuss the existing connectors in Presto, and describe the anatomy of a connector.
This talk provides an in-depth overview of the key concepts of Apache Calcite. It explores the Calcite catalog, parsing, validation, and optimization with various planners.
Kappa Architecture is a software architecture pattern that makes use of an immutable, append only log. All the processing of the event will be performed in the input streams and persisted as real-time views. Apache Flink is very well suited to be the processing engine because it provides support for event-time semantics, stateful exactly-once processing, and achieves high throughput and low latency at the same time. Apache Kudu Kudu is a storage system good at both ingesting streaming data and analysing it using ad-hoc queries (e.g. interactive SQL based) and full-scan processes (e.g Spark/Flink). So Kudu is a good fit to store the real-time views in a Kappa Architecture. We have developed and open-sourced a connector to integrate Apache Kudu and Apache Flink. It allows reading/writing data from/to Kudu using the DataSet and DataStream Flink’s APIs. The connector has been submitted to the Apache Bahir project and is already available from maven central repository.
Using Apache Calcite for Enabling SQL and JDBC Access to Apache Geode and Oth...Christian Tzolov
When working with BigData & IoT systems we often feel the need for a Common Query Language. The system specific languages usually require longer adoption time and are harder to integrate within the existing stacks.
To fill this gap some NoSql vendors are building SQL access to their systems. Building SQL engine from scratch is a daunting job and frameworks like Apache Calcite can help you with the heavy lifting. Calcite allow you to integrate SQL parser, cost-based optimizer, and JDBC with your NoSql system.
We will walk through the process of building a SQL access layer for Apache Geode (In-Memory Data Grid). I will share my experience, pitfalls and technical consideration like balancing between the SQL/RDBMS semantics and the design choices and limitations of the data system.
Hopefully this will enable you to add SQL capabilities to your prefered NoSQL data system.
https://fosdem.org/2017/schedule/event/hpc_bigdata_calcite/
When working with BigData & IoT systems we often feel the need for a Common Query Language. The platform specific languages are often harder to integrate with and require longer adoption time.
To fill this gap many NoSql (Not-only-Sql) vendors are building SQL layers for their platforms. It is worth exploring the driving forces behind this trend, how it fits in your BigData stacks and how we can adopt it in our favorite tools. However building SQL engine from scratch is a daunting job and frameworks like Apache Calcite can help you with the heavy lifting. Calcite allow you to integrate SQL parser, cost-based optimizer, and JDBC with your big data system.
Calcite has been used to empower many Big-Data platforms such as Hive, Spark, Drill Phoenix to name some.
I will walk you through the process of building a SQL access layer for Apache Geode (In-Memory Data Grid). I will share my experience, pitfalls and technical consideration like balancing between the SQL/RDBMS semantics and the design choices and limitations of the data system.
Hopefully this will enable you to add SQL capabilities to your prefered NoSQL data system.
Deep learning has come a long way over the past few years, with advances in cloud computing, frameworks, and open source tooling, working with images has gotten simpler over time. Delta Lake has been amazing at creating a tabular structured transactional layer on object storage, but what about images? Would you like to know how to gain a 45x improvement in your image processing pipeline? Join Jason and Rohit to find out how!
Apresentação sobre Apache Cassandra, arquitetura, fluxo de operações, cluster, ferramentas para desenvolvimento, overview sobre o CQL. Apresentação do caso de uso da Movile.
Promovido por: Movile, Datastax e Planet Cassandra.
A comparison of different solutions for full-text search in web applications using PostgreSQL and other technology. Presented at the PostgreSQL Conference West, in Seattle, October 2009.
Understanding and Improving Code GenerationDatabricks
Code generation is integral to Spark’s physical execution engine. When implemented, the Spark engine creates optimized bytecode at runtime improving performance when compared to interpreted execution. Spark has taken the next step with whole-stage codegen which collapses an entire query into a single function.
The Art of Unit Testing - Towards a Testable DesignVictor Rentea
Slides of the Talk I gave at Devoxx Belgium 2019.
=== Abstract ===
Focusing on the creative work without being terrified of breaking the existing behavior can make software development very addictive! Good automated tests can buy you that!
However, if your tests are not maintainable they may end up slowing you down and causing you painful headaches, compilation errors and spurious failures. To avoid that, your unit tests should be significant; expressive; clean; DRY; non-overlapping; and blazing fast. Writing good tests becomes the toughest challenge for any developer, no matter how battle-hardened: you need to balance risk with test maintenance costs, while looking out for test design smells that call for [risky] refactoring to drive your design towards a set of key principles (included:).
Principles that will end up shaping the way you craft the Production code itself. Because in the end, a good, clean design is more important than coverage%.
But testing gives you the best feedback to get there.
Grab a black coffee and join this snippet from Victor’s Pro Unit Testing #training, to learn about testing priorities, buggy tests, the shared @Before, Mocks vs Stubs and how to reduce them by "purifying" your logic, testing Legacy Code and refactoring @Spy-es out.
All of that in an entertaining, dynamic and memorable session.
Gradle is an open source build automation system that builds upon the concepts of Apache Ant and Apache Maven and introduces a Groovy-based domain-specific language (DSL) instead of the XML form used by Apache Maven for declaring the project configuration.
Modern applications are concurrent, parallel, asynchronous, and synchronous; they utilize many different subsystems, including network systems, actor systems, distributed systems, and more. Across all these modes of computation and different subsystems, the one constant is failure. Errors happen everywhere, and taming their monstrous complexity in a way that helps developers write correct code and troubleshoot failures is one of the hardest challenges of modern application development.
In this presentation, created just for the Dublin Scala Meetup, John A. De Goes and Kai from 7mind.io will take attendees on a tour of error management in Scala, comparing and contrasting Scala's own Future type, and the ZIO effect type. You'll see how functional effects provide features that go way beyond Future: including unified errors across all modes of computation, powerful error operators, lossless error propagation, compiler-assisted error handling, and a stunning new feature for debugging, sponsored by Irish consultancy 7mind.io, will be unveiled exclusively at this presentation.
Come learn about how modern functional effect systems like ZIO provide compelling new solutions to the problems of everyday error management.
Charla realizada en el Agile Spain University Day
Universidad de Oviedo
Escuela de Ingeniería Informática
25/10/2014
Agenda del evento: http://kcy.me/1brle
"¿Se puede implementar una Cultura Ágil?"
Veremos cómo de lejos en Kaleidos han llegado a esta implementación involucrando a equipos, gerencia y clientes; hablara de metodología, herramientas, valores, éxitos, TODO's y algún que otro fracaso.
Intra-emprendimiento en empresas de Frikis - Codemotion 2016Roberto Canales
La mayoría de los desarrolladores sueñan con construir un producto de software. En Autentia, después de 14 años, lo hemos intentado 2 veces, no sin cometer errores. En esta charla contamos por qué lo intentamos y los errores/pivotajes que hacemos
This talk provides an in-depth overview of the key concepts of Apache Calcite. It explores the Calcite catalog, parsing, validation, and optimization with various planners.
Kappa Architecture is a software architecture pattern that makes use of an immutable, append only log. All the processing of the event will be performed in the input streams and persisted as real-time views. Apache Flink is very well suited to be the processing engine because it provides support for event-time semantics, stateful exactly-once processing, and achieves high throughput and low latency at the same time. Apache Kudu Kudu is a storage system good at both ingesting streaming data and analysing it using ad-hoc queries (e.g. interactive SQL based) and full-scan processes (e.g Spark/Flink). So Kudu is a good fit to store the real-time views in a Kappa Architecture. We have developed and open-sourced a connector to integrate Apache Kudu and Apache Flink. It allows reading/writing data from/to Kudu using the DataSet and DataStream Flink’s APIs. The connector has been submitted to the Apache Bahir project and is already available from maven central repository.
Using Apache Calcite for Enabling SQL and JDBC Access to Apache Geode and Oth...Christian Tzolov
When working with BigData & IoT systems we often feel the need for a Common Query Language. The system specific languages usually require longer adoption time and are harder to integrate within the existing stacks.
To fill this gap some NoSql vendors are building SQL access to their systems. Building SQL engine from scratch is a daunting job and frameworks like Apache Calcite can help you with the heavy lifting. Calcite allow you to integrate SQL parser, cost-based optimizer, and JDBC with your NoSql system.
We will walk through the process of building a SQL access layer for Apache Geode (In-Memory Data Grid). I will share my experience, pitfalls and technical consideration like balancing between the SQL/RDBMS semantics and the design choices and limitations of the data system.
Hopefully this will enable you to add SQL capabilities to your prefered NoSQL data system.
https://fosdem.org/2017/schedule/event/hpc_bigdata_calcite/
When working with BigData & IoT systems we often feel the need for a Common Query Language. The platform specific languages are often harder to integrate with and require longer adoption time.
To fill this gap many NoSql (Not-only-Sql) vendors are building SQL layers for their platforms. It is worth exploring the driving forces behind this trend, how it fits in your BigData stacks and how we can adopt it in our favorite tools. However building SQL engine from scratch is a daunting job and frameworks like Apache Calcite can help you with the heavy lifting. Calcite allow you to integrate SQL parser, cost-based optimizer, and JDBC with your big data system.
Calcite has been used to empower many Big-Data platforms such as Hive, Spark, Drill Phoenix to name some.
I will walk you through the process of building a SQL access layer for Apache Geode (In-Memory Data Grid). I will share my experience, pitfalls and technical consideration like balancing between the SQL/RDBMS semantics and the design choices and limitations of the data system.
Hopefully this will enable you to add SQL capabilities to your prefered NoSQL data system.
Deep learning has come a long way over the past few years, with advances in cloud computing, frameworks, and open source tooling, working with images has gotten simpler over time. Delta Lake has been amazing at creating a tabular structured transactional layer on object storage, but what about images? Would you like to know how to gain a 45x improvement in your image processing pipeline? Join Jason and Rohit to find out how!
Apresentação sobre Apache Cassandra, arquitetura, fluxo de operações, cluster, ferramentas para desenvolvimento, overview sobre o CQL. Apresentação do caso de uso da Movile.
Promovido por: Movile, Datastax e Planet Cassandra.
A comparison of different solutions for full-text search in web applications using PostgreSQL and other technology. Presented at the PostgreSQL Conference West, in Seattle, October 2009.
Understanding and Improving Code GenerationDatabricks
Code generation is integral to Spark’s physical execution engine. When implemented, the Spark engine creates optimized bytecode at runtime improving performance when compared to interpreted execution. Spark has taken the next step with whole-stage codegen which collapses an entire query into a single function.
The Art of Unit Testing - Towards a Testable DesignVictor Rentea
Slides of the Talk I gave at Devoxx Belgium 2019.
=== Abstract ===
Focusing on the creative work without being terrified of breaking the existing behavior can make software development very addictive! Good automated tests can buy you that!
However, if your tests are not maintainable they may end up slowing you down and causing you painful headaches, compilation errors and spurious failures. To avoid that, your unit tests should be significant; expressive; clean; DRY; non-overlapping; and blazing fast. Writing good tests becomes the toughest challenge for any developer, no matter how battle-hardened: you need to balance risk with test maintenance costs, while looking out for test design smells that call for [risky] refactoring to drive your design towards a set of key principles (included:).
Principles that will end up shaping the way you craft the Production code itself. Because in the end, a good, clean design is more important than coverage%.
But testing gives you the best feedback to get there.
Grab a black coffee and join this snippet from Victor’s Pro Unit Testing #training, to learn about testing priorities, buggy tests, the shared @Before, Mocks vs Stubs and how to reduce them by "purifying" your logic, testing Legacy Code and refactoring @Spy-es out.
All of that in an entertaining, dynamic and memorable session.
Gradle is an open source build automation system that builds upon the concepts of Apache Ant and Apache Maven and introduces a Groovy-based domain-specific language (DSL) instead of the XML form used by Apache Maven for declaring the project configuration.
Modern applications are concurrent, parallel, asynchronous, and synchronous; they utilize many different subsystems, including network systems, actor systems, distributed systems, and more. Across all these modes of computation and different subsystems, the one constant is failure. Errors happen everywhere, and taming their monstrous complexity in a way that helps developers write correct code and troubleshoot failures is one of the hardest challenges of modern application development.
In this presentation, created just for the Dublin Scala Meetup, John A. De Goes and Kai from 7mind.io will take attendees on a tour of error management in Scala, comparing and contrasting Scala's own Future type, and the ZIO effect type. You'll see how functional effects provide features that go way beyond Future: including unified errors across all modes of computation, powerful error operators, lossless error propagation, compiler-assisted error handling, and a stunning new feature for debugging, sponsored by Irish consultancy 7mind.io, will be unveiled exclusively at this presentation.
Come learn about how modern functional effect systems like ZIO provide compelling new solutions to the problems of everyday error management.
Charla realizada en el Agile Spain University Day
Universidad de Oviedo
Escuela de Ingeniería Informática
25/10/2014
Agenda del evento: http://kcy.me/1brle
"¿Se puede implementar una Cultura Ágil?"
Veremos cómo de lejos en Kaleidos han llegado a esta implementación involucrando a equipos, gerencia y clientes; hablara de metodología, herramientas, valores, éxitos, TODO's y algún que otro fracaso.
Intra-emprendimiento en empresas de Frikis - Codemotion 2016Roberto Canales
La mayoría de los desarrolladores sueñan con construir un producto de software. En Autentia, después de 14 años, lo hemos intentado 2 veces, no sin cometer errores. En esta charla contamos por qué lo intentamos y los errores/pivotajes que hacemos
Charla
Crear contenidos y de paso mejorar el seo -
Meeting Tecnológico Comfenalco - Cartagena 2013
Edison Monsalve .
Pdta: Por favor, piratéela todo lo que pueda con sus amigos.
El diseñador a medias (con notas). UX Spain 2013 qweos
Cuatro ocasiones en la que los diseñadores de interacción se quedan a medias en el proceso de definición y creación de productos digitales.
Presentación para User Experience Spain 2013. Encuentro de profesionales de la Experiencia de Usuario en España celebrado los días 11 y 12 de mayo de 2013 en el Palacio de Congresos Conde Ansúrez de la Universidad de Valladolid.
Consejos y trucos para cualificar una oportunidad DrupalLa Drupalera
David Munárriz, co-Fundador de Emergya y de La Drupalera y Director de Emergya Digital, repasa algunos tips que utliizamos en Emergya/Drupalera para saber si debemos o no entrar en determinados proyectos y cuales son nuestros trucos y filtros más importantes para alinearnos con el cliente a la hora de cualificar una oportunidad Drupal o para detectar si vamos o no llegar a buen puerto. Creo que puede ser interesante para personal de negocio, jefes de proyecto, preventa y cualquier desarrollador.
En esta charla llamada oficina de Historias de Usuario y otros memés instrumentales trato de describir del des-alineamiento existente entre los apasionados por la programación y las áreas de negocio. A través de los 12 principios del manifiesto ágil podemos ver que busca cada uno y que hacen falta palancas o caballos de Troya para iniciar el cambio en entornos no ideales. El concepto de oficina de historias de usuario es fácil de vender a las organizaciones como palanca para empezar a formar y divulgar. El memé guía de demostración rompe silos de conocimiento técnico y fuerza a que los programadores ganen visión (mirar el todo de Lean). Tambien este último concepto obliga a que mejore el flujo de feedback y de entrega a áreas de pruebas y de despliegue de valor (DevOps) en ciclos menores que un Sprint.
Cas2016 transformación digital y metodologías ágilesRoberto Canales
Transparencias de Roberto Canales @rcanalesmora de @autentia de la conferencia de agilismo #CAS2016.
Las organizaciones tienen distintos niveles de madurez y por lo tanto necesitan distintos tipos de liderazgo y coach agile. Se hace necesario centrarse en implantar prácticas hasta que llega la madurez y hay que tener distintos discursos y recetas para distintos público.
Negocio y compras normalmente desconocen la terminología y las prácticas y hay que saber cómo transmitir. Encadenando Design Thinking, historias de usuario y priorización, dbb, tdd y devops se puede llegar muy lejos.
Se pueden explicar muchas cosas a través de los cinturones de Judo.
Principios del comportamiento humano para la dirección de proyectosRoberto Canales
Esta charla la impartí en Valencia en Octubre de 2013 en el marco de jornadas presenciales del Executive Master Project Management de la Universidad de Valencia. http://www.uv-mdap.com
Se grabaron en video.
Patrones de toma de requisitos en proyectos ágiles en la Cas2013Roberto Canales
En esta charla pretendía comentar cómo nos habíamos dado cuenta, en una empresa de 25 empleados, de que éramos poco homogéneos a la hora de proporcionar servicios, sobre todo en uno de los puntos vitales: definir y estimar un proyecto en base a historias y minimizar riesgos.
Un modo de conseguirlo es crear métodos para que todo el mundo vaya adquiriendo los conocimientos.
Se describieron los elementos fundamentales: épicas, historias, chores, temas, spikes, etc.
También la técnica para estimar proyectos grandes:
- Conseguir todas las historias.
- Descomponerlas en ventanas por prioridad.
- Estudiar en detalle a primera ventana (de pongamos 25).
- Estimar la primera ventana.
- Asegurarse que no hay historias (que no tenemos capacidad de detallar y estimar) que se desmadren, estudiando los posibles estados del sistema y viendo el riesgo técnico/funcional.
Para descomponer historias de usuario existen numerosos patrones que sería interesante conocer.
Otro asunto vital es "mirar el todo" y estudiar los riesgos. Describimos un método que hemos llamado Risk Evaluation Machine (REM) para hacer una gestión visual de riesgos:
Área de definición.
- Definir los riesgos entre los compañeros.
- Agruparlos por categoría (para ver solapes y los que faltan).
- Sugerir otras categorías para encontrar otros riesgos que no tenemos en la cabeza.
Máquina (área central de estudio que tiene que terminar limpia)
- Se estudia la probabilidad e impacto.
- Se cualifican y descartan los menos importantes.
- Se estudia en detalle los vitales (gran probabilidad e impacto)
- Se hacen preguntas (5 por que´s) para encontrar las causas primeras y sugerir soluciones.
Área resumen de proyecto
- Se estructuran los riesgos en un panel para cada proyecto.
- Usaremos este panel como elemento de comunicación incluso con técnicas originales como pegar globos o luces en él para que nadie ignore los riesgos.
Esta charla fue curiosa porque como lo conté no tube apenas feedback sobre el contenido pero si sobre el jefismo que transmití (no hice el discleimer inicial) :-) A nadie pareció gustarle el concepto de disciplina en un evento ágil...
Parece que la gente no entiende que nada es blanco ni es negro sino que todo tiene matices.
Me gusta la frase: Esto es Esparta haciendo referencia a la película 300: Un grupo pequeño, de élite, tiene cada miembro una gran capacidad pero tiene una gran disciplina colectiva, que es lo que les da el poder. Si entras en los SWAT ya tendrás grandes destrezas que seguro que mejoraras. Por muy bueno que sea el grupo será mejor cuanto más compenetrados estén. Todo el mundo asumirá que hay una disciplina. Los mismos métodos que se usan el un grupo de élite (donde alguien voluntariamente ha querido entrar) no se pueden usar en otros contextos.
Obviamente hay que adaptar el comportamiento al contexto.
Presentación de Roberto Canales, @rcanalesmora, en el XPDay.
La idea fundamental es que tenemos que crear equipos potentes a tres niveles:
gestión de la configuración, metodología ágiles y arquitecturas/frameworks.
Los mejores técnicos se centran demasiado en picotear de lo nuevo en vez de desarrollar a sus equipos y consolidar bases formativas.
También se comenta que hay que introducir los conceptos de control de la calidad, aseguramiento de la calidad y mejora continua ofreciendo indicadores cuantitativos a negocio.
Presentación corta de Autentia ofreciendo servicios de formación, soporte a desarrollo, implantación de frameworks Jee y factoria de software.
Expertos en métodos ágiles.
El viernes 20 de Abril de 2012 dimos una charla en Camon contando argumentos que un creador de series podría dar a un posible cliente para que financiara una Web Serie. Realmente contamos, sin tapujos, cual es el motivo que mueve a Autentia a hacerlo. El tag en Twitter es #Neg_Ocio
Folleto actualizado de los servicios ofrecidos por Autentia: soporte a desarrollo, factoría de software, formación y comunidad. Somos el integrador de tecnologías opensource en el mundo Java.
El recurso escaso en nuestros tiempos, en el mundo del desarrollo Java, es tener disponible un profesional motivado y experto que sea capaz de proporcionar valor y visión sobre los frameworks del mercado y productos de portal, gestión de contenidos, bpm, etc.
Que ofrece Autentia en formato comic. Escenarios de trabajo como factoría de software, departamento de I+D externalizado, auditoría de código, soporte a desarrollo, formación, tntconcept y más.
Si bien los hospitales conjuntan a profesionales de salud que atienden a la población, existe un equipo de organización, coordinación y administración que permite que los cuidados clínicos se otorguen de manera constante y sin obstáculos.
Mario García Baltazar, director del área de Tecnología (TI) del Hospital Victoria La Salle, relató la manera en la que el departamento que él lidera, apoyado en Cirrus y Estela, brinda servicio a los clientes internos de la institución e impulsa una experiencia positiva en el paciente.
Conoce el Hospital Victoria La Salle
Ubicado en Ciudad Victoria, Tamaulipas, México
Inició operaciones en el 2016
Forma parte del Consorcio Mexicanos de Hospitales
Hospital de segundo nivel
21 habitaciones para estancia
31 camas censables
13 camillas
2 quirófanos
+174 integrantes en su plantilla
+120 equipos médicos de alta tecnología
+900 pacientes atendidos
Servicios de +20 especialidades
Módulos utilizados de Cirrus
HIS
EHR
ERP
Estela - Business Intelligence
Escaneo y eliminación de malware en el equiponicromante2000
El malware tiene muchas caras, y es que los programas maliciosos se reproducen en los ordenadores de diferentes formas. Ya se trate de virus, de programas espía o de troyanos, la presencia de software malicioso en los sistemas informáticos siempre debería evitarse. Aquí te muestro como trabaja un anti malware a la hora de analizar tu equipo
2. No somos periodistas, somos desarrolladores
⸺ Más de 20 años.
⸺ Más de 120 personas.
⸺ Grupo Izertis > 1.700 personas.
⸺ 10 Millones de facturación en 2022.
⸺ 2 expertos en UX.
⸺ 5 expertos en Agile.
⸺ > 100 Expertos en desarrollo software.
@rcanalesmora 2
4. ¿Hay diferencias entre empresas?
Todas las empresas tienen gente buena: nosotros sólo tenemos gente
buena. Tiene que costar entrar .. tiene que haber guia
@rcanalesmora 4
Ser bueno no es ser infalible
5. @rcanalesmora 5
Ni tengo que llevar razón ni nadie tiene que hacerme caso
Voy a hablar proyectando en base a mis propios sesgos.
https://ia-latam.com/2019/12/16/200-cognitive-biases-rule-our-everyday-thinking/
7. @rcanalesmora 7
Desarrollador: todo el que vive de programar !!
La aproximación a la profesión se
produce desde muchos punto:
⸺ Autodidacta.
⸺ Bootcamp.
⸺ Módulo de grado medio.
⸺ Módulo de grado superior.
⸺ Carreras no tecnológicas.
⸺ Carreras tecnológicas (teleco,
matemáticas, etc.)
⸺ Ingeniería informática.
⸺ Otros
¿Y la base?
¿es la misma?
Conocimiento
Desconocimiento
Consciente Inconsciente
8. @rcanalesmora 8
Ejemplos reales: Programador de Front
Puede ser muy solvente pero ¿sabe el impacto de su trabajo? ¿Conoce
los conceptos de threads, sockets, memoria compartida, etc.
https://madelinemiller.dev/blog/javascript-promise-overhead/
9. @rcanalesmora 9
Ejemplos reales: Programador Back
En muchas entrevistas programadores Java afirman no haber leído nunca
un libro de Java, usado un APM o analizado su propio código.
¿Sabemos cómo se versionan APIs?
https://www.adictosaltrabajo.com/2015/08/17/rest-y-el-versionado-de-servicios/
10. @rcanalesmora 10
Pasarse el juego
En juegos de plataformas te pasas muchas pantallas y luchas contra un
gran monstruo. Si fallas, vuelves al principio del nivel.
11. @rcanalesmora 11
El onboarding
Si contratas a largo plazo ¿qué
importan unos días o semanas de no
facturación?
¡Sería bueno algo de guía!
12. @rcanalesmora 12
Mis niveles de inmadurez: descubrimiento
Obsesión por programar (ciclo
dopamina corto).
Creer que “sabes” por trabajar con
un lenguaje de moda (Visual C++).
Descuidar otras asignaturas (no
completar estudios).
Evitar interacción social (en la
discoteca hablar en la barra de
programación).
Olvidar la forma física.
https://es.wikipedia.org/wiki/Pir%C3%A1mide_de_Maslow
13. @rcanalesmora 13
Mis niveles de inmadurez: primeros trabajos
Obsesión por estudiar lo que saben mis
colegas (descuidando encargos).
Cabrearme por enterarme que lo ganaban
otros compañeros que consideraba menos
competentes.
Evitar reuniones = pérdida de tiempo.
Frustrarme por trabajar en más de un
proyecto.
Pensar más en lo que podría aprender que
en el valor para empresa o cliente.
https://www.memegenerator.es/meme/31829880
14. @rcanalesmora 14
Mis niveles de inmadurez: dirigiendo gente
Centrado en la solución técnica
(desconectar con reuniones en cliente al
identificar reto).
Obsesionado con excelencia y rehacer
varias veces: TDD, patrones,
automatización..
¡Quita que ya lo hago yo!
Buscando ser el héroe del equipo.
No comprender la necesidad de reportar
a los jefes para dejarles tranquilos.
https://yeclaofertas.wordpress.com/2015/04/26/top-humor-y-mejores-frases-de-las-r
edes-sociales-de-yecla-ofertas-20-24-04-2015/en-mi-libro-quita-cono-que-no-tienes
-ni-puta-idea-hablo-sobre-como-trabajar-en-equipo-yecla-ofertas/
15. @rcanalesmora 15
Mis niveles de inmadurez: otras lindezas
Sólo querer trabajar en empresas de
producto (evitar compromisos, presiones e
interacciones con cliente).
Trabajar de preventa o arquitecto
dependiendo sólo de mi propio trabajo.
Enamorarse de la propia capacidad de
vender y creando un problema al que tiene
que ejecutar.
Cambiar de trabajo por $$$$ y dejando de
hacer lo que me gusta.
https://ar.pinterest.com/pin/176836722838635446/
16. @rcanalesmora 16
Múltiples dimensiones de evolución
Personal
— Templar el caracter.
— Crear comportamientos de apoyo.
Técnica
— Base mínima para todo el mundo.
— Conocer lo que se desconoce.
Orientada a valor
— Obsesionarse con entregar valor al usuario,
cliente que paga y empresa.
https://www.amazon.es/vida-100-a%C3%B1os-trabajar-longevidad/dp/8493895768
17. @rcanalesmora 17
Adquirir activos a lo largo de la vida
⸺ Activos tangibles
— Generadores de renta.
— Evitar despilfarros.
⸺ Activos intangibles
— Productivos: formación, reputación,
idiomas, etc..
— Vitales: Forma, peso, pareja.
— Transformacionales:
autoconocimiento, apertura al cambio,
flexibilidad.
https://www.verbub.com/i/109719/ten-hijo-lo-necesitas-mas-que-yo-pero-ya-tengo-una-ingenieria
https://www.adictosaltrabajo.com/2022/10/06/comentando-el-libro-la-vida-de-100-anos/
18. @rcanalesmora 18
A nivel persona
Si no te conoces pueden haber pocos
comportamientos de ayuda.
● Jugar al ping-pong “obligatorio”.
● Presentarse a nivel personal y hobbies.
● Comer con distintos grupos.
● Asistir a charlas de otros compañeros (B&P,
formación).
● ¿Teletrabajo?
Recordad que en conferencias: hasta las 21:00 se
aprende, hasta las 24:00 se hacen amigos, hasta las
4 de la mañana se hace familia.
19. @rcanalesmora 19
Muchas otras cosas
⸺ Centrarse en conocimientos a
corto plazo (evitar hype en
cambios de trabajo o proyecto).
⸺ Aprender en profundidad (leer
libros).
⸺ Cuidar la higiene física y mental
(motes, “cariño”, “amor”).
⸺ Todo por favor y gracias siempre.
⸺ Evitar guetos.
⸺ Gestionar confidencialidad.
⸺ Prohibido comunicar solución sin
juicio de pares.
⸺ Documentar contexto de todos
los proyectos.
⸺ Informar semanalmente del
estado anímico.
⸺ Solicitar cambio y rotación de
modo temprano (aún estando
cómodos).
⸺ Dar valor a todos los trabajos y
compañeros, no sólo técnicos.
20. @rcanalesmora 20
A nivel profesional
Cada grupo debe definir sus mínimos:
● Threads, Sockets, HTTP, gestión de APIs,
IoC, arquitectura hexagonal, etc.
● TDD, BDD, integración continua,
despliegue continuo.
● Seguridad informática.
● Clean code, SonarQube, APM.
● Herramientas: BELK, ECM, ETL.
21. @rcanalesmora 21
A nivel orientación a valor: obsesionarse..
Con la organización:
○ Mentorizar y ayudar como prioridad.
○ Compartir conocimiento y generar contenido.
○ Pensar en equipos y no en personas.
Con el cliente final:
○ Da igual la empresa de la que sea un
profesional: es tu compañero.
○ Buscamos soluciones no culpables.
○ Entender la madurez de la tecnología y el
equipo.
○ Querer entender los negocios.
http://patineta.net/2016/05/callate-y-toma-mi-dinero-fix-manufacturing-board-sword/
callate-y-toma-mi-dinero/
24. @rcanalesmora 24
Posible evolución
Gestionar la relación con cliente - Visión de negocio
Gobernar la demanda con el cliente - Metodologías ágiles
Construir equipos, formar y delegar - Productividad de equipo
Trabajar con calidad y orientado a pruebas - Principios y métodos
Diseñar sin sobre-diseñar - Frameworks y herramientas
Preocuparse sólo por programar y aprender - Lenguajes y librerías
25. @rcanalesmora 25
No es obligatorio pasar de nivel
En alguna empresa podrás ser feliz independientemente del camino.
Muchos males de la profesión empiezan por un
mal o inexistente onboarding