<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Memorias de un desarrollador</title><link>https://desarrolla2.com/</link><description>El lugar donde voy dejando algunas de mis ideas, experiencias y reflexiones como desarrollador.</description><language>es</language><pubDate>Mon, 09 Mar 2026 15:49:52 +0100</pubDate><lastBuildDate>Mon, 09 Mar 2026 15:49:52 +0100</lastBuildDate><generator>DevtiaCore</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><ttl>3600</ttl><item><title>¿Cómo es el proceso de onboarding en devtia?</title><link>https://desarrolla2.com/post/proceso-de-onboarding-en-devtiacom</link><description><![CDATA[<p>En esta entrada vamos a detallar como es nuestro proceso de onboarding. Vamos a publicar esta entrada con dos objetivos principales.</p><ol><li>Dejar documentado el proceso, as&iacute; cada vez que a&ntilde;adimos un compa&ntilde;ero al equipo, poder revisar esta entrada y que no se nos olvide nada.</li><li>Ser tan transparentes como sea posible con los futuros candidatos.</li></ol><p>El proceso de onboarding es&nbsp;<strong>algo muy&nbsp;importante</strong>. He visto muchos sitios donde llegas el primer d&iacute;a y todav&iacute;a no se&nbsp;sabe d&oacute;nde te vas a sentar, tu equipo todav&iacute;a no ha sido solicitado, etc. No voy a decir el nombre pero en una empresa en la que trabaj&eacute; me toc&oacute; estar con mi equipo personal durante seis meses, por que nadie se tomaba la molestia de comprarme uno.</p><p>Por eso queremos diferenciarnos, por entre otras cosas, <strong>tratar con profesionalidad al reci&eacute;n llegado</strong>.</p><h2>Acepta la oferta</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/0977309c90f96b16ba96614f99db09c0d2d2c448.jpg" /></p><p>Cuando hacemos una oferta, en el correo <strong>incluimos los detalles fundamentales&nbsp;de la oferta</strong>. Este paso es important&iacute;simo, ya que a veces el proceso de selecci&oacute;n dura unas cuantas semanas, y tanto el candidato como el entrevistador pueden cometer errores o cambiar de opini&oacute;n. Me refiero a detalles como el&nbsp;tipo de contrato, salario, d&iacute;as de vacaciones, horarios, tiempo de prueba&nbsp;y todo este&nbsp;tipo de cosas.</p><p>Si el candidato acepta, le enviamos un nuevo correo donde le solicitamos&nbsp;los datos necesarios para su alta en la seguridad social,&nbsp;la redacci&oacute;n del contrato&nbsp;y algunos datos extra que solicitamos.</p><h2>Las dos semanas previas a la incorporaci&oacute;n</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/6f5133146e8c7b11a3425dfcfff48c810f98173e.jpg" /></p><p>Estas dos semanas son&nbsp;el momento adecuado para preparar en conciencia la llegada de este nuevo compa&ntilde;ero.</p><p>Estas son las tareas que debemos completar:</p><ol><li>Decidir cu&aacute;l ser&aacute; su puesto de trabajo, asegurarnos que la silla es adecuada y que su puesto tiene sentido con respecto a la gente con la que necesita trabajar.</li><li>Creamos usuarios para las herramientas de trabajo y le enviamos un correo resumen con los detalles de acceso de cada una: Correo, Jira, Bitbucket, Slack, Jenkins ... etc</li><li>Formateamos su equipo.
	<ol><li>Todos nuestros equipos son <a href="http://www.toshiba.es/laptops/product-filter/?sFamily=portege">toshiba portege</a>. Un ultrabook de poco m&aacute;s de un kilo de peso, con muy buenos acabados. Compramos siempre disco duro SSD y 16GB de RAM.&nbsp;</li><li>A menos que hayamos pactado lo contrario, trabajamos todos con el mismo sistema operativo, normalmente la &uacute;ltima LTS de ubuntu disponible.
		<ol><li>Realizamos una &quot;pre instalaci&oacute;n&quot; del entorno, y de la configuraci&oacute;n de seguridad.</li></ol></li><li>Redactamos un correo indicando los puntos&nbsp;b&aacute;sicos del proyecto en el que va a comenzar a trabajar, urls, repositorios, etc.</li></ol></li><li>Seleccionamos algunas tareas de entrada, y se las dejamos asignadas.</li><li>Preparamos el pack de bienvenida.
	<ol><li>Portatil, funda, pantalla, rat&oacute;n y teclado inal&aacute;mbricos</li><li>Camiseta y taza corporativas.</li><li>Un par de cuadernos y bolis.</li><li>Su contrato de trabajo.</li></ol></li></ol><div class="text-center"><figure><img alt="Pack de bienvenida" class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_400/uploads/image/image/da307675c2093864baa366d4feab953cb3d10372.jpg" /><figcaption>Pack de bienvenida</figcaption></figure></div><p>No es tan&nbsp;espectacular como en otras empresas, pero est&aacute; hecho con mucho cari&ntilde;o</p><h2>El primer d&iacute;a</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/adcbe6d1478e284a86a2cb6a3018359025171e70.png" /></p><p>El primer d&iacute;a debe servir de toma de contacto tanto con los proyectos como con los compa&ntilde;eros y colaboradores m&aacute;s habituales.</p><ol><li>Le mostramos su ubicaci&oacute;n,&nbsp;le hacemos un paseo guiado por la oficina, y le contamos las cosas t&iacute;picas, a que hora comemos, a que hora paramos para desayunar, donde comprar comida&nbsp;si un d&iacute;a no trae, etc.</li><li>Le presentamos a todos sus compa&ntilde;eros.</li><li>Le hacemos una intro tanto al proyecto como a las primeras issues.</li><li>Le dejamos instalando el equipo&nbsp;al gusto.</li></ol><h2>La primera&nbsp;semana</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/1b4b153946936c4cae6f9e95eebb1343621ccb0e.jpg" /></p><p>La primera semana sigue siendo de toma de contacto y de aterrizar en el proyecto. Lo normal es que la primera semana no hagamos teletrabajo.</p><p>Lo importante en esta fase es que nuestro nuevo compa&ntilde;ero, vaya entendiendo poco a poco el proyecto, y pueda conocer a las personas y a las herramientas con las que trabajamos.</p><p>Es un proceso progresivo, en el que en lugar de contarle todo el primer d&iacute;a vamos profundizando poco a poco a lo largo de las semanas.</p>]]></description><guid>https://desarrolla2.com/post/proceso-de-onboarding-en-devtiacom</guid><pubDate>Sun, 05 May 2019 22:58:00 +0200</pubDate></item><item><title>Ejecución asíncrona de eventos con el EventDispatcher de symfony</title><link>https://desarrolla2.com/post/ejecucion-asincrona-de-eventos-con-el-eventdispatcher-de-symfony</link><description><![CDATA[<p>Esta es la charla que di en el&nbsp;<a href="https://www.meetup.com/phpmad/events/245070402/">evento&nbsp;de php madrid el d&iacute;a 22 de Noviembre de 2017</a>.</p><p>Symfony provee un sistema de eventos para que diferentes componentes puedan comunicarse entre si.<br /><br />
Veremos como pasar de esta ejecuci&oacute;n sincrona a una asincrona, y dos ejemplos de implementaci&oacute;n de la misma, una b&aacute;sica con mysql y una avanzada con rabbitmq y supervisord.<br /><br />
Finalmente veremos como asegurar esta arquitectura para que sea a prueba de fallos.</p><div class="youtube-container"><iframe allowfullscreen="" height="315" src="https://www.youtube.com/embed/-byISd1L7a0"></iframe></div>]]></description><guid>https://desarrolla2.com/post/ejecucion-asincrona-de-eventos-con-el-eventdispatcher-de-symfony</guid><pubDate>Sat, 06 Jan 2018 17:55:00 +0100</pubDate></item><item><title>¿Cual fue la causa de la caída del imperio español?</title><link>https://desarrolla2.com/post/cual-fue-la-causa-de-la-caida-del-imperio-espanol</link><description><![CDATA[<p>Una de mis aficiones es la historia. No se puede decir que sepa mucho de historia, simplemente que soy aficionado a la misma. En mis meditaciones internas hay una pregunta a la que siempre he tratado de dar respuesta. &iquest;Cu&aacute;l fue la causa de la ca&iacute;da del imperio espa&ntilde;ol?</p><p>En mi opini&oacute;n hay dos causas principales.</p><h2>La (imprevisible) llegada de los Austrias</h2><p>Isabel y Fernando gestionaron una serie de alianzas matrimoniales con otras monarqu&iacute;as europeas con el objetivo de crear una coalici&oacute;n anti francesa.</p><p>Para ello pactaron matrimonios de sus hijos con los herederos de otras importantes potencias.</p><ol><li>A Isabel la cas&oacute; dos veces con el heredero a la corona de Portugal, llegando su segundo marido, Manuel, a ser rey de este pa&iacute;s.</li><li>A Juan, lo cas&oacute; con Margarita de Austria.</li><li>A Juana, la cas&oacute; con Felipe el Hermoso, estos dos &uacute;ltimos hijos de Maximiliano I, emperador del Sacro Imperio Romano Germ&aacute;nico.</li><li>A Maria la cas&oacute; con el viudo de su hermana de Isabel, Manuel I de Portugal.</li><li>A Catalina la caso dos pr&iacute;ncipes de Gales, siendo el segundo el famoso Enrique VIII.</li></ol><p>El plan trazado por los reyes cat&oacute;licos se trunc&oacute; en parte, por una serie de muertes que llevaron la l&iacute;nea de sucesi&oacute;n hasta Juana.</p><ol><li>1475 La reina Isabel sufre un aborto.</li><li>1497 muere de tuberculosis Juan, pr&iacute;ncipe de Asturias.</li><li>1497 nace muerta una hija de Juan.</li><li>1498 muere su hija Isabel al poco de dar a luz.</li><li>1500 muere Miguel de la paz heredero de las coronas de Castilla, Arag&oacute;n y Portugal.</li><li>1504 Juana I de Castilla es proclamada reina de Castilla y en 1516 hereda de su padre la corona de Arag&oacute;n.</li></ol><p>&iquest;Qui&eacute;n podr&iacute;a pensar que Juana fuera a heredar? Ella ni siquiera recibi&oacute; una educaci&oacute;n adecuada a una heredera al trono. ( ampliar esta idea )</p><p>De su hermana Maria, siguiente&nbsp;l&iacute;nea sucesoria, nacieron dos reyes de portugal.</p><p>Como todos sab&eacute;is Juana fue casada&nbsp;con Felipe el hermoso, archiduque de Austria e hijo del emperador Maximiliano. Carlos, el hijo primogenito de Juana fue criado en la corte de flandes. Cuando Carlos cumple la mayor&iacute;a de edad regres&oacute; a espa&ntilde;a para reclamar su trono. En ese momento ni siquiera era capaz de hablar en castellano. A todos los efectos el rey de Castilla y Arag&oacute;n era un completo extranjero.</p><p>Carlos no solo hered&oacute; las Coronas de Castilla y Arag&oacute;n, incluidas todas las nuevas posesiones de ultramar, si no que por parte paterna hered&oacute; el ducado de borgo&ntilde;a y otra serie de territorios de los habsburgo.</p><div class="text-center"><figure><img alt="Dominios europeos de Carlos I" class="img-responsive" src="https://desarrolla2.com/uploads/cache/cache/uploads/image/image/143f9357bf1d60cd6a3011c40083a27942d1d405.jpeg" /><figcaption>Dominios europeos de Carlos I</figcaption></figure></div><p>Esta distribuci&oacute;n de los territorios, junto con el deseo por parte de los Austrias de mantener sus posesiones en Europa, posesiones que en nada favorecen a los intereses de la corona Espa&ntilde;ola.</p><ol><li>Diferentes guerras con francia, especialmente por las posesiones en la actual Italia.</li><li>Guerras contra los protestantes, especialmente en la actual Alemania y los Pa&iacute;ses Bajos.</li></ol><p>En mi opini&oacute;n estas guerras desgastaron al imperio, desperdiciando los valiosos recursos que ven&iacute;an de Am&eacute;rica, y dejando en varias ocasiones al pa&iacute;s al borde de la bancarrota.</p><p>El extremismo religioso</p><p>Para entender este punto, debemos entender que hab&iacute;a pasado en la pen&iacute;nsula ib&eacute;rica antes de la uni&oacute;n de ambas coronas, y es el periodo continuo de guerras religiosas para la reconquista de la pen&iacute;nsula que abarca desde el siglo VII al XV.</p><p>Tal era el compromiso de los reyes cristianos de la pen&iacute;nsula, que se les concedi&oacute; el t&iacute;tulo de reyes cat&oacute;licos por el mism&iacute;simo papa.</p><p>Esta tradici&oacute;n llev&oacute; a liderar la lucha contra los turcos, absorbiendo importantes recursos en este frente.</p><p>Tambi&eacute;n se dio apoyo al bando cat&oacute;lico en las diferentes guerras de religi&oacute;n europeas.</p><p>En mi opini&oacute;n, y a partir de aqu&iacute; todo son divagaciones, si hubieran heredado, tanto Juan, como Juana o Miguel se hubieran evitado al menos las guerras en Alemania y los Pa&iacute;ses Bajos.</p><p>El enfrentamiento contra los turcos era pr&aacute;cticamente inevitable, pero si la corona espa&ntilde;ola no hubiera tenido tant&iacute;simos intereses en Europa, quiz&aacute; podr&iacute;a haber tomado un papel mas secundario, dejando que una parte mayor del peso recayera en el resto de monarqu&iacute;as cristianas.</p><p>&iquest;Que te parece?&iquest;Podr&iacute;a otro heredero haber cambiado la historia?</p>]]></description><guid>https://desarrolla2.com/post/cual-fue-la-causa-de-la-caida-del-imperio-espanol</guid><pubDate>Thu, 13 Sep 2018 14:00:00 +0200</pubDate></item><item><title>¿Cómo es el proceso de selección en devtia?</title><link>https://desarrolla2.com/post/como-es-el-proceso-de-seleccion-en-devtia</link><description><![CDATA[<p>El objetivo del proceso de selecci&oacute;n obviamente es encontrar&nbsp;al candidato correcto, generando la menor cantidad de esfuerzo tanto para el candidato como para nosotros.</p><p>Algunas empresas consideran que el candidato correcto es aqu&eacute;l que cumple con los requisitos necesarios, y cuyas expectativas econ&oacute;micas son lo m&aacute;s bajo&nbsp;posible.</p><p>Nosotros damos una peque&ntilde;a vuelta a este concepto, considerando que la coincidencia tiene que ir en los dos sentidos, esto es: que el candidato cumpla con los requisitos de la empresa, pero a su vez entender que tipo de trabajo ser&iacute;a el ideal para el candidato y que este se parezca lo m&aacute;ximo posible a lo que ofrecemos nosotros como compa&ntilde;&iacute;a. De esta forma te aseguras una relaci&oacute;n laboral a m&aacute;s largo plazo.</p><p>Una vez presentados los objetivos del proceso de selecci&oacute;n vamos a dar forma a las diferentes fases.</p><h2>Preselecci&oacute;n</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/986a5f4c81254e75b064e350ab12b71cb587574d.jpeg" /></p><p>Normalmente recibimos las candidaturas por dos canales o bien por que hemos publicado una oferta en un portal de empleo, o bien nos contactan directamente por que han visto la oferta en este blog&nbsp;o en&nbsp;alguna red social.</p><p>Lo primero que hacemos es abandonar el portal de empleo&nbsp;y seguir el proceso a trav&eacute;s de un peque&ntilde;o crm&nbsp;que hemos desarrollado para este prop&oacute;sito. El motivo es no tener que depender de la plataforma de un tercero para procesos de selecci&oacute;n presentes o futuros.</p><p>Damos de alta una ficha de candidato, donde completamos informaci&oacute;n de contacto b&aacute;sica y comenzamos a revisar que cumples los requisitos m&aacute;s b&aacute;sicos. A veces hay candidatos que podr&iacute;an ser descartados en este mismo momento, pero que una buena carta de presentaci&oacute;n, te hacen conectar con &eacute;l, y aunque no los cumpla, decides mantener su candidatura.</p><p>En este paso pueden ser descartados entre un 70% y un 80% de los candidatos, y los motivos m&aacute;s habituales es que no viven en Madrid, o que no tienen la experiencia&nbsp;suficiente.</p><p>Los candidatos que son descartados en este momento no son notificados. &iquest;por qu&eacute;? simplemente por que son candidaturas que no cumplen las condiciones solicitadas en la oferta, y si no te has molestado en leer detenidamente la oferta, no nos sentimos moralmente obligados a contestarte. Si en una semana no nos hemos puesto en contacto contigo, lo m&aacute;s probable es que hayas sido descartado.</p><h2>Llamada telef&oacute;nica</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/fd63f1af8408ca2172cedc1b4fae23b0cfa4fac1.jpeg" /></p><p>Nos ponemos en contacto con el candidato telef&oacute;nicamente o acordamos con &eacute;l una hora para una llamada telef&oacute;nica. Suele ser&nbsp;una llamada breve de unos 15 o 20 minutos.</p><p>Esta fase tiene dos objetivos:</p><ol><li><strong>Explicar los detalles de la oferta</strong>, as&iacute; como responder a las posibles cuestiones que plantee el candidato.</li><li><strong>Completar</strong> si hiciera falta,&nbsp;<strong>la ficha de candidato</strong> con detalles&nbsp;espec&iacute;ficos.</li></ol><p>Algunos candidatos se han extra&ntilde;ado por que hacemos pocas preguntas en la entrevista telef&oacute;nica, el motivo es que preferimos dejar la bater&iacute;a fuerte de preguntas para la entrevista personal.</p><p>En esta fase&nbsp;descartamos muy pocos candidatos, y se les notifica en el mismo momento. Un caso t&iacute;pico de descarte en esta fase son las expectativas econ&oacute;micas. Por ejemplo si buscamos a alguien con dos a&ntilde;os de experiencia en symfony y tu has &quot;hecho algo hace tiempo&quot; y nos pides 40K, yo no digo que no los valgas, digo que no puedo pagarte 40K para tener que ense&ntilde;arte.</p><h2>Entrevista personal</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/eddf2f43ac5181e5edf89ccee779faeaf78f2e61.jpeg" /></p><p>La entrevista personal es el plato fuerte del proceso de selecci&oacute;n. En nuestro caso la entrevista personal la hacemos habitualmente todo el equipo.</p><p>Tiene dos partes:</p><p>En la primera parte nos enfocamos&nbsp;en entender <strong>qu&eacute;&nbsp;tipo de candidato eres</strong>, <strong>cuales son tus motivaciones</strong>, <strong>que&nbsp;trabajo te gustar&iacute;a tener</strong>&nbsp;y este tipo de cosas.</p><p>El objetivo de esta parte es encontrar esa <strong>coincidencia entre lo que buscas y lo que ofrecemos</strong>. Por as&iacute; decirlo en esta fase no me importa si has sido core contributor de symfony, si no si tus expectativas de un trabajo ideal se parecen a lo que hacemos en nuestro dia a d&iacute;a.</p><p>En la segunda parte<strong> nos gusta ense&ntilde;ar qu&eacute; es lo que hacemos</strong>. Valoramos&nbsp;el tipo de preguntas que nos hace un candidato, por ejemplo si nos pregunta, &iquest;c&oacute;mo gestion&aacute;is las tareas?, le ense&ntilde;amos el board del proyecto en jira, y le contamos c&oacute;mo nos gestionamos en el d&iacute;a a d&iacute;a y por qu&eacute;. Si nos pregunta &iquest;C&uacute;al es vuestra pol&iacute;tica de test? pues lanzamos los test en ese momento y le ense&ntilde;amos algunos ejemplos.</p><p>Esta es la parte m&aacute;s abierta del proceso ya que cada candidato puede preguntar cosas muy diferentes.</p><p>Tratamos de ser muy transparentes, de nada nos sirve que vengas a trabajar con nosotros y a los seis meses presentes tu renuncia, por que este no es el trabajo que esperabas.</p><p>En esta fase se suelen descartar aproximadamente el 50% de los candidatos que llegan a la misma. Los motivos aqu&iacute; pueden ser muy diversos, desde que nos de la sensaci&oacute;n de que has tratado de mentirnos durante la entrevista, o que tus objetivos a medio largo plazo no sean los que puede ofrecerte esta empresa.</p><h2>Prueba t&eacute;cnica</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/87221d1b25bedea1fae7f1839d698e0b5c0cea70.jpeg" /></p><p>Es una prueba muy sencilla, si tienes los conocimientos adecuados, no vas a tener ning&uacute;n problema en superarla. Es tan sencilla que la vas a poder superar aunque no los tengas, si pones el suficiente empe&ntilde;o.</p><p>El objetivo de la prueba&nbsp;es valorar si tienes los conocimientos t&eacute;cnicos que dices tener.&nbsp;</p><p>Es una prueba muy abierta,&nbsp;se puede resolver de muchas formas diferentes, y la forma en la que lo resuelvas nos dir&aacute; mucho de qu&eacute; tipo de programador eres.</p><p>Algunos candidatos nos han indicado que preferir&iacute;an preguntas t&eacute;cnicas durante la entrevista personal, pero aqu&iacute; s&oacute;mos m&aacute;s de leer c&oacute;digo ;).</p><p>En esta fase no se suele descartar a casi nadie. Evaluamos el test en base a lo que nos has contado hasta ahora. Por ejemplo dijiste que eras &quot;un amante de los test&quot; pero la prueba tiene test mal planteados, o nos dijiste que ten&iacute;as mucha experiencia con symfony, y luego vemos carencias de conocimientos b&aacute;sicos c&oacute;mo el uso de formularios, servicios, doctrine.</p><h2>Concilio de Elrond</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/b4e6f60befec0c75334e16e2e9b0dbc9ecaf0c94.jpg" /></p><p>El proceso est&aacute; pensado para que llegen hasta el final un reducido grupo de candidatos. Digamos que todos los que han llegado hasta aqu&iacute;&nbsp;ser&iacute;an buenos candidatos, pero ahora tenemos que ponderar la candidatura en conjunto:</p><ol><li>Feeling personal / soft skills.</li><li>Objetivos a medio largo plazo.</li><li>Conocimientos t&eacute;cnicos que eran requisitos en la oferta.</li><li>Conocimientos t&eacute;cnicos que aporta el candidato,&nbsp;que puedan aportar a la compa&ntilde;&iacute;a, pero que no eran requisitos en la oferta.&nbsp;</li><li>Expectativas salariales.</li></ol><p>Hacemos un &uacute;ltimo team meeting donde hacemos una valoraci&oacute;n completa&nbsp;de&nbsp;estos candidatos, y los ordenamos de mayor a menor por orden de preferencia. Nos quedamos con dos o tres y e informamos&nbsp;a todos los dem&aacute;s de que <strong>no han sido seleccionados</strong>.</p><h2>Oferta al candidato</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/e610d34b58e5e09b8d9c5b9a8a0a05c170104cc2.jpeg" /></p><p>Nos ponemos en contacto telef&oacute;nico&nbsp;con el candidato seleccionado recordandole las condiciones finales y resolviendo cualquier duda si es que la hubise. Tambi&eacute;n se las enviamos por escrito a modo de &quot;pre contrato&quot; para que las tenga por escrito y no existan mal entendidos. Le damos al candidato un periodo razonable para tomar una decisi&oacute;n, es posible que el candidato no acepte la oferta, pero normalmente los que llegan al final, es por que el &quot;mach&quot; es muy bueno entre las dos partes.</p><p>Una vez que el candidato nos confirma que acepta la oferta comienza un proceso en el que vamos requiriendo los datos t&iacute;picos y que nos servir&aacute;n para tenerlo todo listo el d&iacute;a en que comienza a trabajar con nosotros.</p><p>Si el candidato rechazara la oferta, har&iacute;amos una oferta al siguiente candidato.</p><h2>&iquest;Y los no seleccionados?</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/571078c8726e91f45aea22199fc065b85278a26b.png" /></p><p>Los que superan la entrevista personal y la prueba t&eacute;cnica&nbsp;no son candidatos descartados. Simplemente <strong>son candidatos no seleccionados</strong>. Por esto que se comunica a cada uno personalmente que ha sido no seleccionado y se les explica brevemente el motivo.</p><p>No entramos en debates con los candidatos, si no que les ofrecemos un <strong>feedback sincero</strong> sobre lo que nosotros hemos visto, por ejemplo si hemos considerado que no eres un jugador de equipo, no quiere decir que realmente no lo seas, pero nuestro feedback te puede ayudar a mostrar mejor esa habilidad&nbsp;en futuros procesos de selecci&oacute;n ya sea con nosotros o con otra compa&ntilde;&iacute;a.</p><p>&iquest;Que opinas de nuestro proceso de selecci&oacute;n? &iquest;Que cambiar&iacute;as? &iquest;Cuales son sus puntos deb&iacute;les?</p><p>D&eacute;janoslo en la caja de comentarios</p>]]></description><guid>https://desarrolla2.com/post/como-es-el-proceso-de-seleccion-en-devtia</guid><pubDate>Tue, 19 Mar 2019 15:28:00 +0100</pubDate></item><item><title>Imagen del día de la nasa como fondo de escritorio en gnome</title><link>https://desarrolla2.com/post/imagen-del-dia-de-la-nasa-como-fondo-de-escritorio-en-gnome</link><description><![CDATA[<p>Una peque&ntilde;a man&iacute;a que tengo es tener fondos de pantalla que cambian cada cierto tiempo.</p><p>Ex&iacute;sten algunos paquetes que hacen esto para gnome, pero no est&aacute;n en los repositorios oficiales, e instalar un repositorio adicional, para algo tan sencillo, no acaba de convencerme.</p><p>Por eso tengo el un peque&ntilde;o script en php que descarga una imagen y la pone como fondo de escritorio. En el ejemplo utilizo la <a href="https://www.nasa.gov/multimedia/imagegallery/iotd.html">imagen del d&iacute;a de la NASA</a>. Un servicio en el que cada d&iacute;a cuelgan una imagen nueva. La mayor&iacute;a de las cuales bastante espectacular.</p><p>El script podr&iacute;a ser mucho m&aacute;s elaborado, pero prefer&iacute;a algo sencillo, sin dependencias.</p><pre><code>
&lt;?php // run.php

$url = &#39;https://www.nasa.gov/rss/dyn/lg_image_of_the_day.rss&#39;;
$directory = &#39;/your/path/to/download/directory&#39;;
if (!is_dir($directory)) {
    exec(sprintf(&#39;mkdir -p %s&#39;, $directory));
}
$feed = file_get_contents($url);
$xml = simplexml_load_string($feed);
$json = json_encode($xml);
$array = json_decode($json, true);

if (!array_key_exists(&#39;channel&#39;, $array)) {
    return;
}
$channel = $array[&#39;channel&#39;];

if (!array_key_exists(&#39;item&#39;, $channel)) {
    return;
}

$items = $channel[&#39;item&#39;];
foreach ($items as $item) {
    if (!array_key_exists(&#39;enclosure&#39;, $item)) {
        continue;
    }

    $enclosure = $item[&#39;enclosure&#39;];
    if (!array_key_exists(&#39;@attributes&#39;, $enclosure)) {
        continue;
    }

    $attributes = $enclosure[&#39;@attributes&#39;];

    if (!array_key_exists(&#39;url&#39;, $attributes)) {
        continue;
    }

    $url = $attributes[&#39;url&#39;];
    $path_info = pathinfo($url);
    $extension = $path_info[&#39;extension&#39;];
    $fileName = sprintf(&#39;%s/%s.%s&#39;, $directory, md5($url), $extension);
    if (file_exists($fileName)) {
        return;
    }

    exec(sprintf(&#39;wget -O %s %s&#39;, $fileName, $url));
    exec(sprintf(&#39;gsettings set org.gnome.desktop.background picture-uri file://%s&#39;, $fileName));

    return;
}</code></pre><p>Hay otros servicios que te ofrecen buenas im&aacute;genes en formato rss como por ejemplo <a href="https://unsplash.com/search/photos/rss">unspash</a>. Seguro que puedes encontrar un servicio que te de un tipo de im&aacute;genes de tu agrado.</p><p>Cada vez que ejecutes este fichero, buscar&nbsp;actualizaciones, descarga la &uacute;ltima&nbsp;y la configura&nbsp;como fondo de escritorio.</p><pre><code>php run.php</code></pre><p>Yo programo una ejecuci&oacute;n peri&oacute;dica del mismo, a&ntilde;adiendo el siguiente contenido en el fichero /etc/cron.d/wallpaper</p><pre><code>10 * * * *   yourusername /usr/bin/php /path/to/script/run.php &gt;&gt; /tmp/cron.nasa-wallpaper.log 2&gt;&amp;1</code></pre><p>Ya me contar&aacute;s si te ha sido &uacute;til.</p>]]></description><guid>https://desarrolla2.com/post/imagen-del-dia-de-la-nasa-como-fondo-de-escritorio-en-gnome</guid><pubDate>Mon, 05 Nov 2018 09:13:00 +0100</pubDate></item><item><title>¿cuánto gana una empresa que factura por un empleado 60,000/año y le paga menos de 2,000/mes?</title><link>https://desarrolla2.com/post/cuanto-gana-una-empresa-que-factura-por-un-empleado-60000-ano-y-le-paga-menos-de-2000-mes</link><description><![CDATA[<p>He querido crear esta entrada despu&eacute;s de una conversaci&oacute;n en la que pude identificar una gran desinformaci&oacute;n con respecto a cu&aacute;les son los costes y los m&aacute;rgenes que tiene una empresa.</p><p>S&eacute; que esta entrada puede ser pol&eacute;mica, pero estos son los costes reales que tiene una empresa. Voy a tratar de ser bastante preciso, pero por favor perdonarme errores u omisiones ya que este no es mi &aacute;rea de trabajo.</p><p>En este <a href="https://docs.google.com/spreadsheets/d/1zcbCXF3psLRhWVSprpcFUTlRTV7Yaxj031HaN-j-sbA/edit?usp=sharing">enlace</a> est&aacute;n disponibles las f&oacute;rmulas utilizadas.</p><h2>Premisa inicial</h2><p>La premisa inicial es la siguiente: Queremos saber cual es el margen que le genera a la empresa un empleado en las siguientes condiciones.</p><ul><li><strong>Profesi&oacute;n</strong>: desarrollador de software.</li><li><strong>Salario mensual</strong>: menos de 2,000.00 euros/mes con sus pagas prorrateadas.</li><li><strong>Facturaci&oacute;n anual</strong>: por los servicios que este realiza 60,000.00 euros/a&ntilde;o.</li><li><strong>Margen</strong>: m&aacute;s de 36,000.00 euros/a&ntilde;o.</li></ul><p>Parece un negocio redondo, pero d&eacute;jame profundizar un poco m&aacute;s. Por supuesto este beneficio no es real.</p><h2>&iquest;Cuanto gana ese empleado?</h2><p>Empecemos analizando cuanto dinero se va a llevar nuestro desarrollador por el ejercicio de sus funciones.</p><p>Para estos c&aacute;lculos vamos a proponer que tiene un salario de 30,000.00 euros brutos al a&ntilde;o.</p><p>Como todos sab&eacute;is un empleado paga impuestos. Por un lado el IRPF que se paga a hacienda y que depende de tu situaci&oacute;n personal y familiar, y por otro lado la seguridad social, que depende del puesto de trabajo y la categor&iacute;a profesional&nbsp;que tengas.</p><p>Seg&uacute;n esta <a href="http://cincodias.elpais.com/herramientas/calculadora-sueldo-neto/">calculadora</a>, un empleado soltero sin hijos estar&iacute;a en esta situaci&oacute;n.</p><div class="table-responsive"><table class="table table-striped"><thead><tr><th>Concepto</th><th class="col-sm-2 text-right">Euros/a&ntilde;o</th></tr></thead><tbody><tr><td>Salario bruto anual</td><td class="text-right">30,000.00 &euro;</td></tr><tr><td>Aportaci&oacute;n a la seguridad social a cargo del empleado</td><td class="text-right">1,905.00 &euro;</td></tr><tr><td>Retenci&oacute;n IRPF</td><td class="text-right">4,938.00 &euro;</td></tr><tr><td>Salario neto anual</td><td class="text-right">23,157.00 &euro;</td></tr><tr><td>Salario neto mensual ( 12 pagas )</td><td class="text-right">1,929.75 &euro;</td></tr></tbody></table></div><p>Es decir menos de 2,000.00 euros al mes.</p><h2>&iquest;Cu&aacute;nto le cuesta a la empresa ese empleado?</h2><p>La empresa adem&aacute;s de abonar esos 30,000.00 euros/a&ntilde;o tiene que aportar unas cantidades que dependen del salario bruto&nbsp;anual en concepto de aportaciones a la seguridad social a cargo de la empresa, en este caso estar&iacute;amos hablando de&nbsp;7,995.00 euros.</p><p>Para el correcto&nbsp;ejercicio de su profesi&oacute;n, el desarrollador&nbsp;requiere de la empresa una deterinada&nbsp;inversi&oacute;n como es la compra del equipos inform&aacute;ticos,&nbsp;formaci&oacute;n, asistencia a eventos, pre venta de sus servicios, ect... y algunos costes como gestor&iacute;a, alquiler de la oficina, limpieza, cena de empresa, cesta de navidad ect. Vamos a suponer que valorar todo esto en 1,500.00 euros/a&ntilde;o.</p><p>Supongamos para simplificar que estos 1,500.00 euros/a&ntilde;o son despu&eacute;s de descontar el IVA, para no tener que tener en cuenta m&aacute;s adelante el IVA soportado.</p><div class="table-responsive"><table class="table table-striped"><thead><tr><th>Concepto</th><th class="col-sm-2 text-right">Euros/a&ntilde;o</th></tr></thead><tbody><tr><td>Salario bruto anual</td><td class="text-right">30,000.00 &euro;</td></tr><tr><td>Aportaci&oacute;n a la seguridad social a cargo de la empresa</td><td class="text-right">7,995.00 &euro;</td></tr><tr><td>Otros gastos</td><td class="text-right">1,500.00 &euro;</td></tr></tbody><tfoot><tr><th>Coste</th><th class="col-sm-2 text-right">39,495.00 &euro;</th></tr></tfoot></table></div><p>Es decir que este programador le cuesta a la empresa casi 40,000.00 euros/a&ntilde;o.</p><h2>&iquest;Pero cu&aacute;nto queda?</h2><p>Hemos indicado en nuestra premisa inicial que obten&iacute;amos una facturaci&oacute;n por el trabajo de ese empleado de 60,000.00 euros/a&ntilde;o. De esa cantidad debemos descontar el IVA.</p><div class="table-responsive"><table class="table table-striped"><thead><tr><th>Concepto</th><th class="col-sm-2 text-right">Euros/a&ntilde;o</th></tr></thead><tbody><tr><td>Facturaci&oacute;n</td><td class="text-right">60,000.00 &euro;</td></tr><tr><td>Facturacion neta</td><td class="text-right">49,586.78 &euro;</td></tr><tr><td>Margen bruto</td><td class="text-right">10,091.78 &euro;</td></tr></tbody></table></div><p>La empresa adem&aacute;s despu&eacute;s de presentar las cuentas anuales tiene que hacer frente al impuesto de sociedades.</p><div class="table-responsive"><table class="table table-striped"><thead><tr><th>Concepto</th><th class="col-sm-2 text-right">Euros/a&ntilde;o</th></tr></thead><tbody><tr><td>Margen bruto</td><td class="text-right">10,091.78 &euro;</td></tr><tr><td>Impuesto de sociedades</td><td class="text-right">2,522.95 &euro;</td></tr><tr><td>Margen neto</td><td class="text-right">7,568.84 &euro;</td></tr></tbody></table></div><p>Una cosa &uacute;ltima cosa que debes tener muy en cuenta cuando tienes empleados, es la posibilidad de tener que despedirlos. Algunos empresarios, esperan hasta que la empresa quiebra y que estas personas reclamen su dinero al fogasa. Pero si eres una persona responsable deber&iacute;as aprovisionar el dinero necesario para poder despedirlo si hiciera falta. Seg&uacute;n esta <a href="http://www.poderjudicial.es/cgpj/es/Servicios/Utilidades/Calculo-de-indemnizaciones-por-extincion-de-contrato-de-trabajo/#">calculadora</a> esta es la cantidad que debes aprovisionar.</p><div class="table-responsive"><table class="table table-striped"><thead><tr><th>Concepto</th><th class="col-sm-2 text-right">Euros/a&ntilde;o</th></tr></thead><tbody><tr><td>Salario bruto anual</td><td class="text-right">30,000.00 &euro;</td></tr><tr><td>Provisi&oacute;n despido improcedente</td><td class="text-right">2,712.33&euro;</td></tr></tbody></table></div><p>Si apartas ese dinero nos quedamos en esta situaci&oacute;n.</p><div class="table-responsive"><table class="table table-striped"><thead><tr><th>Concepto</th><th class="col-sm-2 text-right">Euros/a&ntilde;o</th></tr></thead><tbody><tr><td>Margen neto anual</td><td class="text-right">7,568.84 &euro;</td></tr><tr><td>Provisi&oacute;n despido improcedente</td><td class="text-right">2,712.33 &euro;</td></tr></tbody><tfoot><tr><td>L&iacute;quido disponible</td><td class="text-right">4,856.51 &euro;</td></tr></tfoot></table></div><h2>&iquest;C&oacute;mo se reparte el dinero?</h2><p>En la siguiente tabla tienes el detalle de las cantidades que hemos ido proponiendo, indicando quien es el beneficiario de esas cantidades, que porcentaje del total suponen y su importe</p><div class="table-responsive"><table class="table table-striped"><thead><tr><th>Concepto</th><th class="col-sm-2">Beneficiario</th><th class="col-sm-2 text-right">Euros/a&ntilde;o</th></tr></thead><tbody><tr><td>Facturaci&oacute;n</td><td class="text-right">~</td><td class="text-right">60,000.00 &euro;</td></tr><tr><td>IVA</td><td>AEAT</td><td class="text-right">10,413.22 &euro;</td></tr><tr><td>IRPF</td><td>AEAT</td><td class="text-right">4,938.00 &euro;</td></tr><tr><td>Impuesto sociedades</td><td>AEAT</td><td class="text-right">&euro;2,522.95 &euro;</td></tr><tr><td>Aportaciones a la seguridad social</td><td>Seguridad Social</td><td class="text-right">9,900.00 &euro;</td></tr><tr><td>Salario empleado (neto)</td><td>Empleado</td><td class="text-right">23,157.00 &euro;</td></tr><tr><td>Gastos varios</td><td>Proveedores varios</td><td class="text-right">1,500.00 &euro;</td></tr><tr><td>Provisi&oacute;n despido improcedente</td><td>Empresa</td><td class="text-right">2,712.33 &euro;</td></tr><tr><td>L&iacute;quido</td><td>Empresa</td><td class="text-right">4,856.51 &euro;</td></tr></tbody></table></div><p>Si agrupamos por beneficiario y ordenamos de mayor a menor esto es lo que tenemos.</p><div class="table-responsive"><table class="table table-striped"><thead><tr><th>Beneficiario</th><th class="col-sm-2 text-right">%</th><th class="col-sm-2 text-right">Euros/a&ntilde;o</th></tr></thead><tbody><tr><td>Empleado</td><td class="text-right">37,82%</td><td class="text-right">23,157.00 &euro;</td></tr><tr><td>AEAT</td><td class="text-right">29.79%</td><td class="text-right">17,874.17 &euro;</td></tr><tr><td>SS</td><td class="text-right">16.50%</td><td class="text-right">9,900.00 &euro;</td></tr><tr><td>Empresa ( l&iacute;quido disponible )</td><td class="text-right">8.09%</td><td class="text-right">4,856.51 &euro;</td></tr><tr><td>Empresa ( provisi&oacute;n fondos despido )</td><td class="text-right">4.52%</td><td class="text-right">2,712.33 &euro;</td></tr><tr><td>Proveedores varios</td><td class="text-right">2,5%</td><td class="text-right">1,500.00 &euro;</td></tr></tbody></table></div><p>Como ves no es oro todo lo que reluce, de aquellos 36,000.00 euros/a&ntilde;o que hab&iacute;amos calculado al principio vemos que quedan menos de 5,000.00 euros/a&ntilde;o.</p><h2>&iquest;Te parecen demasiados impuestos?</h2><p>Pues no hemos terminado.</p><ul><li>Los socios deber&aacute;n pagar a traves de la renta(19-21%) si se reparten dividendos.</li><li>Tanto los socios como el desarrollador deber&aacute;n pagar IVA(21%) por el dinero que se gasten en productos o servicios.</li></ul><p>Ya no voy a profundizar m&aacute;s, pero es evidente que hacienda se va a llevar otra buena mordida de todo esto.</p><p><strong>Si, una locura</strong>.</p><p>&iquest;Que piensas? &iquest;Subimos un poco m&aacute;s los impuestos? D&eacute;jame tus impresiones en los comentarios.</p>]]></description><guid>https://desarrolla2.com/post/cuanto-gana-una-empresa-que-factura-por-un-empleado-60000-ano-y-le-paga-menos-de-2000-mes</guid><pubDate>Mon, 20 Aug 2018 17:35:00 +0200</pubDate></item><item><title>El uso de referencias en la búsqueda de empleo</title><link>https://desarrolla2.com/post/el-uso-de-las-referencias-en-la-busqueda-de-empleo</link><description><![CDATA[<p>Este fin de semana <a href="https://twitter.com/david_bonilla">David Bonilla</a> public&oacute; una entrada en la bonilista en la que introduc&iacute;a el tema de si una referencia podr&iacute;a/deber&iacute;a poder arruinar&nbsp;un proceso de selecci&oacute;n.</p><p>Como el tema tiene miga y se ha generado un poco de ruido en twitter me gustar&iacute;a a&ntilde;adir mi punto de vista.</p><h2>El uso de referencias en la&nbsp;b&uacute;squeda de&nbsp;empleo</h2><p>Como candidato considero que hay que ser muy responsable dando referencias. En mi opini&oacute;n creo que las referencias se deben dar en la parte final de un proceso de selecci&oacute;n y s&oacute;lo habiendo solicitado permiso a dicha persona.</p><p>Voy a evitar entrar la parte legal que supone ceder datos personales de terceros&nbsp;y centr&aacute;ndome en el apartado moral. Para ello lo m&aacute;s importante es ponerte en los zapatos de la persona que quieres dar como referencia.</p><p>Antes de dar una referencia, en mi opini&oacute;n deber&iacute;as contactar con dicha persona y solicitar su permiso para hacerlo. Si m&aacute;s adelante quieres volver a indicar su referencia, mi recomendaci&oacute;n es solicitar su permiso de nuevo.</p><p>Hay que tener en cuenta, que para la persona que est&aacute;s dando como referencia, quiz&aacute; no sea agradable que lo interrumpan en su trabajo para preguntar por una determinada persona, sobre todo si esto ocurre con frecuencia.</p><p>Por eso al preguntar, no s&oacute;lo te aseguras de que no le molesta, si no que adem&aacute;s es posible que la referencia sea mejor, ya que seguro que dedicar&aacute; algunos momentos mentales a decidir qu&eacute;&nbsp;es lo que quiere decir sobre t&iacute;, por lo que podr&aacute; responder mejor a ese requerimiento.</p><p>En cuanto al momento, como ya dije, deber&iacute;a ser el el tramo final del proceso de selecci&oacute;n. De esta forma, tanto la empresa como t&uacute; como candidato, tendr&eacute;is bastante claro que quer&eacute;is seguir adelante. Dar la referencia al principio significar&iacute;a molestar m&aacute;s de la cuenta a la persona que has indicado como referencia.&nbsp;</p><h2>El uso de referencias en la&nbsp;b&uacute;squeda de un candidato</h2><p>Cuando he tenido que buscar un candidato el uso de las referencias ha sido determinante. Si tienes una referencia com&uacute;n positiva, muy mal lo tienes que hacer para no llevarte el puesto.</p><p>Much&iacute;simo trabajo se mueve a trav&eacute;s de estas recomendaciones comunes, adem&aacute;s es en mi opini&oacute;n la mejor forma de acertar. De hecho en mi opini&oacute;n el primer sitio donde buscar un candidato es en tu propia red de contactos. Si no lo encuentras y tienes que buscar en alg&uacute;n portal de empleo o similar, una vez que has determinado que un candidato te gusta lo mejor que puedes hacer es tratar de buscar si existe esa referencia com&uacute;n.</p><p>En el caso de que puedas encontrarlas, es el momento ideal para hacer una llamada o quedar para tomar un caf&eacute; con esa persona y ponerte al d&iacute;a y de paso preguntarle por el candidato que te interesa.</p><p>En el caso de que no puedas encontrarlas, si que creo que puede ser buena idea el solicitar referencias. Estas referencias hay que interpretarlas, ya que por ejemplo una muy buena relaci&oacute;n entre el candidato y la referencia, puede hacer que te de una recomendaci&oacute;n por encima de la realidad, y lo mismo en caso contrario.</p><h2>Las referencias en linkedin</h2><p>Yo a linkedin le doy muy poca credibilidad. Esta red en mi opini&oacute;n cometi&oacute;&nbsp;el error hace a&ntilde;os&nbsp;de favorecer recomendaciones y contactos de forma antinatural.</p><p>Por ejemplo cuando introdujo la funcionalidad de <em>skills</em>&nbsp;mientras que navegabas por la red, te indicaba si quer&iacute;as dar &quot;+1&quot; a una determinada habilidad de alguno de tus contactos. Mucha gente daba a ese &quot;+1&quot; por probar que pasaba.</p><p>Esto produjo que los primeros que a&ntilde;adieron esas skills a su perfil, obtuvieran un elevado n&uacute;mero de &quot;+1s&quot;, especialmente aquellos que ten&iacute;an redes especialmente grandes. En mi caso tengo algunos &quot;+1&quot; en habilidades t&eacute;cnicas de personas que no conozco y que ni siquiera son t&eacute;cnicas.</p><p>Lo mismo ocurre con las redes de contactos. linkedin continuamente te ofrece la posibilidad de a&ntilde;adir como contacto a nuevas personas. El resultado son redes enormes de contactos en los que no conoces ni has tenido relaci&oacute;n con el 10%.</p><p>Con esto lo que quiero decir, que linkedin promueve que los perfiles parezcan muy buenos, y muy bien conectados sobre una presentaci&oacute;n m&aacute;s cercana a la realidad.</p><p>Regresando al tema de las recomendaciones, mucha gente pacta, te pongo una recomendaci&oacute;n y tu me pones a m&iacute; una. Esto genera demasiado ruido, y distorsiona el ver si el candidato es realmente recomendable.</p>]]></description><guid>https://desarrolla2.com/post/el-uso-de-las-referencias-en-la-busqueda-de-empleo</guid><pubDate>Mon, 27 Aug 2018 10:21:00 +0200</pubDate></item><item><title>¿Quieres trabajar con nosotros?</title><link>https://desarrolla2.com/post/oferta-de-empleo-para-trabajar-en-devtia-com-1</link><description><![CDATA[<div class="alert alert-danger" role="alert"><p>Actualmente <strong>este proceso de selecci&oacute;n est&aacute; cerrado</strong>. No obstante siempre estamos interesados en tener candidatos para futuros procesos, por lo que si esta oferta te interesa, no dudes en enviarnos tus datos.</p></div><p>Abrimos un nuevo proceso de selecci&oacute;n con el objetivo de ampliar el equipo. El rango salarial es bastante amplio por que hay varios tipos de perfiles que podr&iacute;an encajar.</p><h2>&iquest;QUI&Eacute;NES SOMOS?</h2><p><a href="http://devtia.com">devtia.com</a> es una compa&ntilde;&iacute;a joven. Queremos posicionarnos como una compa&ntilde;&iacute;a capaz de desarrollar software de calidad en tiempos y costes razonables.</p><p>Creemos que el camino es apostar fuerte por crear un equipo de IT potente en el que todo el mundo querr&iacute;a trabajar :). No creemos en las jerarqu&iacute;as si no en la meritocracia.</p><p>Actualmente&nbsp;la empresa tiene tres empleados y&nbsp;algunos colaboradores.</p><h2>&iquest;QU&Eacute; HACEMOS?</h2><p>Resolvemos&nbsp;problemas de nuestros clientes con soluciones de base tecnol&oacute;gica. Trabajamos para startups y para pymes. Eso s&iacute;, &hellip; no trabajamos con c&oacute;digo legacy, ya que no nos permite ser competitivos.</p><p>Nuestro core es el desarrollo e implantaci&oacute;n de sistemas CRM y ERP a medida.</p><h2>&iquest;QU&Eacute; BUSCAMOS?</h2><p>Buscamos perfiles de nivel medio o medio-alto, que nos permitan construir un equipo altamente competitivo.</p><p>Deber&iacute;as encajar en esta descripci&oacute;n:</p><ul><li>Ser buena gente.</li><li><strong>Te gusta</strong> lo que haces.</li><li>Eres <strong>responsable</strong> en tu trabajo.</li><li>Te gustar&iacute;a <strong>seguir creciendo</strong> a nivel profesional. Dedicas o has dedicado una parte de tu tiempo libre para seguir aprendiendo.</li><li>Tengas ganas de pertenecer a un proyecto a largo plazo.</li><li>Experiencia en PHP/Symfony, Linux, Mysql, Bootstrap y Git.</li></ul><h2>&iquest;QU&Eacute; OFRECEMOS?</h2><ul><li>Empresa transparente y moderna. Buen ambiente de trabajo.</li><li>Contrato indefinido y salario bruto entre 30 y 40K.</li><li><strong>Formaci&oacute;n continua</strong> por parte de la compa&ntilde;&iacute;a.</li><li>Elige&nbsp;tu horario dentro de un rango. <strong>Remoto dos d&iacute;as a la semana</strong>.</li><li>Oficinas en el centro de madrid junto al Wizink.</li><li><strong>Viaje anual a una conferencia</strong>, cesta de navidad, cena de empresa, ...</li></ul><h2>&iquest;TE INTERESA?</h2><div class="alert alert-danger" role="alert"><p>Actualmente <strong>este proceso de selecci&oacute;n est&aacute; cerrado</strong>. No obstante siempre estamos interesados en tener candidatos para futuros procesos, por lo que si esta oferta te interesa, no dudes en enviarnos tus datos.</p></div><p>Escribe a info at <a href="http://devtia.com">devtia.com</a> indicando tu tel&eacute;fono, linkedin, github, twitter, banda salarial, disponibilidad, y por qu&eacute;&nbsp;deber&iacute;amos contratarte ;)</p>]]></description><guid>https://desarrolla2.com/post/oferta-de-empleo-para-trabajar-en-devtia-com-1</guid><pubDate>Thu, 28 Jun 2018 10:08:00 +0200</pubDate></item><item><title>Los podcast que escucho</title><link>https://desarrolla2.com/post/los-podcast-que-escucho</link><description><![CDATA[<p>Desde hace algunos a&ntilde;os soy un avido consumidor de podcast.</p><p>&iquest;Que es un podcast? Digamos que es un canal donde se publican contenidos en formato audio de una tematica concreta. Algo as&iacute; como un blog, pero para archivos de audio.</p><p>Actualmente hay mucho nivel entre los podcasters, y tienes contenidos de alt&iacute;sima calidad de forma gratuita, simplemente por el amor que sienten algunas personas por transmitir lo que saben sobre un determinado tema.</p><p>Estos son los podcast que escucho, los comparto contigo, para ayudarles dandoles difusi&oacute;n, y por supuesto para que completes mi lista en los comentarios, diciendo cuales son los que te gustan a t&iacute;.</p><h2>Ciencia e Historia</h2><p><img class="img-responsive" src="https://desarrolla2.com/uploads/cache/thumb_1200_200/uploads/image/image/0126f10df4a45ff50ce79a90013e5ba7ad842923.jpeg" /></p><ul><li><a href="https://www.ivoox.com/podcast-biblioteca-alejandria_sq_f12488_1.html">La biblioteca de alejandr&iacute;a</a>&nbsp;fue probablemente el primer podcast que escuch&eacute;&nbsp;y me engancho al instante. Tienen otro canal <a href="https://www.ivoox.com/podcast-pergamino-alejandria_sq_f143966_1.html">los pergaminos de la bibliteca</a>&nbsp;en el que ofrecen los audios cortados por secciones, por si quieres ir directamente a un tema en concreto. Algunos audios memorables son: <em>las fugas del castillo de Colditz</em>, <em>Marie Curie</em>, <em>Isaac Newton</em> y <em>HP Lovecraft</em>.&nbsp;Actualmente est&aacute; abandonado.</li><li><a href="http://memoriasdeuntambor.com/">Memorias de un tambor</a>&nbsp;Uno de mis podcast favoritos. Increibles los audios de <em>los &uacute;ltimos de filipinas</em>, <em>Hernan Cort&eacute;s</em>, <em>Blas de Lezo</em>, <em>Cristobal Col&oacute;n</em>. Realmente un 9/10 donde casi todos los audios tienen un nivel alt&iacute;simo. Si tuviera que ponerle un pero, es que a veces se moja en&nbsp;temas pol&iacute;ticos, y eso en mi opini&oacute;n &quot;estropea&quot; el trabajo.</li><li><a href="https://www.histocast.com/">Histocast</a>&nbsp;Es un podcast de historia militar generalista. Muy interesante el an&aacute;lisis que hacen anualmente sobre <em>Yihadismo</em>.</li></ul><h2>Cine y Literatura</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/b8bdc7dc8173d254fc28689880bd0710a8b23fbf.jpeg" /></p><ul><li><a href="http://laorbitadeendor.com/">La orbita de endor</a>&nbsp;Hablan sobre cine, series, libros y videojuegos, normalmente centrados en la ciencia ficci&oacute;n y la fantas&iacute;a. Es quiz&aacute; el podcast m&aacute;s &quot;profesional&quot; de todos. Tienen una periodicidad muy elevada, y el formato que siguen&nbsp;es el de an&aacute;lisis muy pormenrizado.</li><li><a href="https://labibliotecadetrantor.wordpress.com/">La biblioteca de trantor</a>&nbsp;Dedicado a la fantas&iacute;a y ciencia ficci&oacute;n. A destacar el cap&iacute;tulo sobre la trilog&iacute;a del buyad&eacute;n.</li><li><a href="https://www.ivoox.com/podcast-todopoderosos_sq_f1147805_1.html">Todopoderosos</a>&nbsp;Es un pograma de onda cero, que luego se publica en formato podcast ( bien por onda cero, que tomen nota las dem&aacute;s ).</li><li><a href="https://www.ivoox.com/podcast-retronautas_sq_f157575_1.html">Los retronautas</a>&nbsp;Trata sobre libros y pel&iacute;culas cl&aacute;sicos de la ciencia ficci&oacute;n. En este podcast me interesa sobre todo la parte de los libros, y es imprescindible a la hora de conecer t&iacute;tulos que ni por asomo encontrar&iacute;as de otra forma.</li><li><a href="http://www.carnedevideoclub.com/">Carne de videoclub</a>&nbsp;Hacen an&aacute;lisis en un formato distendido de pel&iacute;culas de los a&ntilde;os 80 y 90.</li></ul><h2>Emprendimiento y startups</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/01bbbfdcfe22948d7b540b3528df2469a1f98325.jpeg" /></p><p>Todos los podcast de emprendimiento siguien m&aacute;s o menos el mismo formato de entrevistas.</p><ul><li><a href="https://masquestartups.com/">M&aacute;s que startups</a>&nbsp;Fue el primer podcast de emprendimiento que comenz&eacute; a escuchar. Los fundadores de <a href="http://Kfund y Más que startups ambos siguen el mismo formato. En cada programa realizan una entrevista a un invitado ( o dos, pero siempre de la misma empresa ), en la cual repasan temas siempre relacionados con el emprendimiento. El primer podcast está realizado por un grupo de inversores y el segundo por dos emprendedores.">Besepa</a> entrevistan a otros fundadores.</li><li><a href="https://blog.kfund.vc/tagged/podcast">Kfund</a>&nbsp;el equipo de kfund entrevista a emprendedores y otros inversores.</li><li><a href="http://www.elvalledelostercos.com/">El valle de los tercos</a>&nbsp;creo que de todos los podcast que escucho es el que mejor edici&oacute;n tiene. Entrevistan a emprendedores hispanos de silicon valley. Muy interesante ver como son las cosas al otro lado del charco.</li><li><a href="https://en.digital/">En digital</a>&nbsp;este podcast lleva poco tiempo en mi lista. Tiene un enfoque m&aacute;s marquetiniano.</li></ul><h2>Tecnolog&iacute;a</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/29c1314ebd73c8511e97603e47191f58a9120560.jpeg" /></p><ul><li><a href="https://www.entredevyops.es/">Entre dev y ops</a>&nbsp;Entrevistas y an&aacute;lisis de las novedades del sector de devops. Para mi este es el mejor podcast de tecnolog&iacute;a en activo.</li><li><a href="http://wedevelopers.com/">We developers</a>&nbsp;La potent&iacute;sima voz de Jose Ant&oacute;nio Blanco dirige este podcast de entrevistas. Yo mismo particip&eacute; en uno hace alg&uacute;n tiempo.&nbsp;Hace bastante que no publican.</li><li><a href="https://www.ivoox.com/podcast-betabeers-podcast_sq_f1334967_1.html">Betabeers</a>&nbsp;No llevan demasiado tiempo con el podcast, aunque betabeers es una de las comunidades m&aacute;s consolidadas del panorama nacional. El formato es el de comentar las &uacute;ltimas noticias y novedades, todo ello con un tono muy desenfadado.</li><li>En la categor&iacute;a de tecnolog&iacute;a hay multitud de podcast que he escuchado y que se encuentran abandonados desde hace a&ntilde;os. Menci&oacute;n especial a un podcast que hac&iacute;a <a href="https://twitter.com/carlosble">Carlos Bl&eacute;</a> que no recuerdo el nombre, javahispano podcast y el de mozilla hispano.</li></ul><h2>Otros</h2><p><img class="img-responsive" src="https://desarrolla2.com/media/cache/resolve/thumb_1200_200/uploads/image/image/5651e8c5a68a556786f73f8c39e9bffc3ee4c2bd.jpeg" /></p><ul><li><a href="https://fubarpodcast.wordpress.com/">Fubar</a>&nbsp;y&nbsp;<a href="http://turnocu4tro.blogspot.com.es/">Turno 4</a>&nbsp;Actualidad y entrevistas relacionadas con wargames y minitaturas. El primero Fubar es de ambito m&aacute;s historico.</li><li><a href="https://www.lavozdehorus.com/">La voz de horus</a>&nbsp;y <a href="https://www.ivoox.com/podcast-biblioteca-tizca_sq_f1370364_1.html">La biblioteca de tizca</a>&nbsp;Transfondo del juego de miniaturas warhammer 40k. El</li><li><a href="https://www.ivoox.com/podcast-7g-podcast_sq_f1396693_1.html">7G podcast</a>&nbsp;Es el podcast de la asociaci&oacute;n s&eacute;ptimo grado. Tiene varias sencciones, transfondo de juegos, historico. Mi secci&oacute;n preferida es &quot;culo veo culo quiero&quot;, en la que se plantea un reto del tipo &quot;como montar mi propia marca de miniaturas&quot;. Me parece expecialmente interesante cuando la acompa&ntilde;an, por ejemplo con alguien que ya haya creado su propia marca.</li></ul><p>Escucho muchos m&aacute;s, ya que soy un autentico friki de los podcast, muchos de ellos, entran est&aacute;n una temporada y finalmente salen, por que no acaban de gustarme.</p><p>Y t&uacute; &iquest;Que podcast escuchas? &iquest;Me falta alguno en la lista?</p>]]></description><guid>https://desarrolla2.com/post/los-podcast-que-escucho</guid><pubDate>Tue, 26 Dec 2017 23:10:00 +0100</pubDate></item><item><title>Extraer traducciones de tu aplicación symfony</title><link>https://desarrolla2.com/post/extraer-traducciones-de-tu-aplicacion-symfony</link><description><![CDATA[<p>Symfony cuenta con un componente para traducciones bastante potente. Sin embargo tiene una carencia a la hora de extraer las diferentes cadenas para que puedan ser traducidas.</p><p>De serie trae el comando translation:update que buscar&aacute; en nuestros ficheros twig y a&ntilde;adir&aacute; las cadenas que no tengamos a un fichero de traducciones.</p><p>&iquest;Pero qu&eacute; ocurre por ejemplo con las traducciones de variables, constantes, &nbsp;y otros valores que no se traducen desde una cadena de twig? Pues b&aacute;sicamente que no hay una buena soluci&oacute;n para esto.</p><p>Nosotros tenemos el siguiente m&eacute;todo para tratar con este espinoso problema.</p><ol><li>Escribimos todos los mensajes en ingl&eacute;s.</li><li>Definimos una estructura de mensajes para evitar que se generen diferentes mensajes que significan lo mismo.</li><li>Escribimos los mensajes en min&uacute;sculas.</li></ol><p>Siempre pasamos los mensajes a trav&eacute;s del filtro trans y luego ponemos en may&uacute;scula o capitalizado con filtros de twig.</p><pre><code>{{ &#39;hi %name%&#39;|trans({&rsquo;%nane%&rsquo;: user.firstName})|capitalize }}.</code></pre><p>Hacemos lo mismo con los mensajes que se env&iacute;an desde los controladores.</p><pre><code>{% for message in app.session.flashbag.get(&#39;error&#39;) %}
  &lt;div class=&quot;alert alert-danger&quot;&gt;{{ message|trans }}&lt;/div&gt;
  {% endfor %}</code></pre><p>Y pasamos por los filtros correspondientes las fechas y los n&uacute;meros</p><pre><code>{{ activity.date|localizeddate(&#39;medium&#39;, &#39;short&#39;) }}</code></pre><p>Como hemos dicho esto lo hacemos siempre, independientemente de si el sitio va a ser traducido a varios idiomas, as&iacute; cuando nos piden que lo traduzcamos lo tenemos pr&aacute;cticamente listo.</p><p>El &uacute;nico problema que tenemos es encontrar todas esa cadenas que necesitan ser traducidas. Antes lo que hac&iacute;amos es cada vez que a&ntilde;ad&iacute;as una cadena, ir al fichero de traducciones, ver si estaba y si no estaba a&ntilde;adirla, pero esto es un trabajo muy tedioso.</p><p>A continuaci&oacute;n la soluci&oacute;n que proponemos.</p><p>A&ntilde;adimos el siguiente servicio:</p><pre><code>services:
  monolog.formatter.translator:
    class: &#39;Monolog\Formatter\LineFormatter&#39;
    arguments:
      - &quot;%%context.id%%\n&quot;</code></pre><p>Despu&eacute;s actualizamos la configuraci&oacute;n de monolog para los entornos de dev y test.</p><pre><code>monolog:
  handlers:
    translation:
      type: &#39;stream&#39;
      path: &quot;%kernel.logs_dir%/translation.missed.csv&quot;
      level: &#39;debug&#39;
      channels: [&#39;translation&#39;]
      formatter: &#39;monolog.formatter.translator&#39;</code></pre><p>Lo que hace este logger es dejar en un fichero csv todas las cadenas que el componente de traducci&oacute;n no pudo traducir.</p><p>Con el siguiente comando limpiamos el fichero de cadenas duplicadas.</p><pre><code>awk &#39;!seen[$0]++&#39; var/logs/translation.missed.csv | sort | tee var/logs/translation.missed.csv</code></pre><p>Ahora s&oacute;lo hace falta subir este fichero a nuestro sistema de traducciones favorito.</p><p>&iquest;Que te ha parecido?</p>]]></description><guid>https://desarrolla2.com/post/extraer-traducciones-de-tu-aplicacion-symfony</guid><pubDate>Sun, 27 May 2018 16:36:00 +0200</pubDate></item></channel></rss>