Foros del Web » Programando para Internet » PHP »

Entrevistas de Trabajo PHP

Estas en el tema de Entrevistas de Trabajo PHP en el foro de PHP en Foros del Web. Hola!, hace un tiempo alguien preguntó que tipo de cosas preguntan para contratar, pues a mi al momento de contratarme es bastante común que hagan ...
  #1 (permalink)  
Antiguo 16/06/2011, 16:14
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 8 meses
Puntos: 336
Entrevistas de Trabajo PHP

Hola!, hace un tiempo alguien preguntó que tipo de cosas preguntan para contratar, pues a mi al momento de contratarme es bastante común que hagan pruebas de PHP.

en este tema quiero compartir las experiencias que he tenido en estas pruebas y las pruebas que yo mismo he hecho para aceptar otros trabajadores, preguntas comunes y tipo de preguntas que me han tocado a mi o a otros amigos de modo de prepararlos a ustedes tambien para sus proximas entrevistas.

también me gustaría invitarlos a ustedes a compartir las pruebas que han experimentado

TIPOS DE PRUEBAS

empezando, primero que nada hay que decir que me han hecho 3 tipos de prueba:

1.- Responder preguntas: lo mas normal es una prueba común donde hay varias preguntas y hay que contestarlas, esta prueba puede ser escrita o oral con pizarra.

2.- Entender código: esta consiste en un código realizado por la empresa en el cual debemos leerlo, entenderlo y decir que hace, a veces nos preguntarán como mejorarlo.

2.2- Encuentra el error: sorpresa! como si haber entendido el código no hubiese sido suficiente resulta que el codigo trae errores intencionales, como buenos programadores debemos encontrar hasta el más mínimo warning

3.- Realizar código: esta es sin duda la prueba más díficil, realizar un código que realice lo solicitado por el empleador, el código será probado, así que tiene que salir perfecto, tambien revisarán que sea ordenado.

ERRORES TIPICOS

siempre hay pequeñas trampas comunes, errores que olvidamos por que no consideramos importantes, estos son algunos de los que me he topado (y caido), anotenlos y tenganlos siempre en cuenta:

Tag PHP: Este es típico de la prueba 2.2, intencionalmente el tag de PHP es colocado de esta manera <? siendo que como sabemos esto no funciona correctamente en los servidores nuevos. tambien es posible que intencionalmente no las escriban! en ese caso escribámoslas nosotros :)

Conexión a BD: Yo diría que el 90% de los programadores no cierra la conexion a la base de datos, esto en una empresa grande es una falta gravísima, en mi empresa actual, quien no cierra la conexion al terminar su script no es contratado, recuerden como cerrar sus bases de datos en todos los motores existentes incluyendo odbc odbc_close();

Parametros: Hay parametros en funciones que no especificamos por ser omitibles, pero en una prueba laboral no debemos pensar de esa manera, el empleador evaluará cada aspecto de nuestra conducta para predecir posibles errores futuros, no olvidemos por ejemplo poner la variable de coneccion xxxx_quey($query,$coneccion), sabemos que no siempre es necesaria, pero más vale que este, no se arriesguen.

Inicio de sesión: este es bastante común en el foro, nunca olvidemos que session_start() debe ir al principio del código y no imprimir nada antes.

Arreglos: este me ha tocado hace poco, una típica trampa, declaran una variable como arreglo $var[]=1; e imprimen como variable echo $var;

Cabezales: se que muchos de ustedes no lo tomarán en cuenta pero es muy importante entender a la perfeccion esto de los cabezales (que no es lo mismo que encabezado XD), un rror común es este: echo "usted sera redireccionado"; header("Location:estas_despedido.php");

Cookies: una buena razón para ser despedidos es el uso de cookies innecesarias, bien sabemos que las cookies tienen una mala fama y los usuarios finales pueden desactivarlas.

GET/POST: ya todos conocemos estos métodos de envios de variables, funcionan, sin problema, pero mucho cuidado al momento de usarlas, primero elegir cuidadosamente cual de las 2 usar, si la página tiene usuarios que harán búsquedas y volverán continuamente a la página anterior usen GET, si la información es delicada, tratemos de usar POST o usar GET con datos que no digan nada al usuario, un ejemplo de un mal get: ?nombre=juan+sanchez, un ejemplo de un buen get: nm=56

Variables: uno de mis más típicos errores es usar variables no declaradas, hay que tener cuidado, jamás poner $x=$y si la variable $y no ha sido iniciada.

Archivos: otra buena razón para no aceptar un postulante, si estás en una empresa grande que tiene miles de personas accediendo simultaneamente si abres un archivo y no lo vas a editar usa fopen($file,'r'); o sea ábrelo como lectura y SIEMPRE despues de abrirlo cierralo, si no lo haces el archivo no quedará disponible para otros procesos.

Multiples Arreglos: evita el uso de arreglos GET y POST simultaneamente, seguramente dirás: "por que?", lo mismo pregunté yo, te aconsejo que no preguntes, solo evitalo XD, tambien evita el uso de SESSION y COOKIES simultaneas.

Bloquea tu PC: bueno al principio no lo consideré necesario, pero si vas a salir, deja el PC bloqueado, si luego sucede cualquier problema será tu culpa, de nadie más.

Graba: al igual que la anterior, graba tu sistema constantemente, si algo sucede será tu culpa por no ser cuidadoso

Pruebas locales: hoy me han llamado la atención por esto, vieron que instalé WAMP para hacer pruebas locales, me dijeron que eso podía ser una vulnerabilidad para la empresa, por suerte tenía una carta bajo la manga, cuando instalen servidores web en su trabajo dejenlos Offline y con acceso solo local.

No AJAX: el empleador no quiere que te luzcas, con AJAX todo es mas lindo, pero en una prueba lo importante es que funcione, es posible que hagan pruebas en navegadores antiguos (IE6) o poco usados (Netcape Navigator) donde tendremos problemas de incompatibildad, no arruines tu oportunidad!

Por último, recuerden que es mejor demorarse y pensar bien las preguntas y respuestas que apurarse a entregarlo rápido para parecer veloces, te contratarán por demorarte, pero jamas por equivocarte XD

siempre llevar un pendrive, una copia del curriculum, enlaces de páginas webs que hayas hecho y cualquier apunte de códigos que puedas ver cuando pidas ir al baño :)

AH! y la división por 0, ese es el error mas grande que existe en programación, si divides por cero eres un NOOB!, valida siempre que la división sea distinta de 0.

espero que esto le sirva a mas de uno!
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #2 (permalink)  
Antiguo 16/06/2011, 16:21
Avatar de andreshenao  
Fecha de Ingreso: enero-2009
Ubicación: Medellìn
Mensajes: 417
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: Entrevistas de Trabajo PHP

Hola, te felicito por el gran aporte que hiciste esta muy bueno
__________________
-----------------
Hosting Medellin
Diseño web medellin
  #3 (permalink)  
Antiguo 16/06/2011, 16:26
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 8 meses
Puntos: 336
Respuesta: Entrevistas de Trabajo PHP

gracias, estén atentos, este fin de semana iré a mi casa y sacaré las pruebas que me han hecho y las publicaré aquí XD
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #4 (permalink)  
Antiguo 16/06/2011, 16:30
Avatar de xtimed  
Fecha de Ingreso: julio-2009
Ubicación: BCN - México
Mensajes: 226
Antigüedad: 15 años, 3 meses
Puntos: 41
Respuesta: Entrevistas de Trabajo PHP

Excelente aporte, un amigo me comentó varias cosas de las que pusiste aquí, son verdad, en mi caso me pidieron que consumiera un webservice, cosa que no sabia, lo bueno fue que me dijeron que podia buscar en internet, algo que valoran tambien en las empresas, es el que sepas buscar información y ser autodidacta
  #5 (permalink)  
Antiguo 16/06/2011, 17:53
Avatar de Ximenitaa  
Fecha de Ingreso: abril-2011
Ubicación: Mexico
Mensajes: 208
Antigüedad: 13 años, 7 meses
Puntos: 43
Respuesta: Entrevistas de Trabajo PHP

Amigo Stramin:

Muy bueno tu aporte, hare un buen resumen de todo esto, de todo lo que pueda estudiar para hacer mi prueba a la universidad, todo esto me ayuda bastante, en hora buena ...

GRACIAS!!!!!!!
__________________
❤(。◕‿◕)❤ . . . Ten un dia .... GeNiAl.... !!!! . . . ❤(◕‿◕。)❤

¿Que dia es hoy? . . . Hoy, hoy, es definitivamente un dia PERFECTO !!
  #6 (permalink)  
Antiguo 16/06/2011, 21:58
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 15 años, 4 meses
Puntos: 641
Respuesta: Entrevistas de Trabajo PHP

perfecto y valiosisimo stramin, aunque yo soy ingeniero en sistemas ambientales XD
  #7 (permalink)  
Antiguo 17/06/2011, 19:33
Avatar de Carlmycol  
Fecha de Ingreso: diciembre-2007
Ubicación: Los Teques, Venezuela
Mensajes: 240
Antigüedad: 16 años, 11 meses
Puntos: 3
Respuesta: Entrevistas de Trabajo PHP

Excelentísimo el aporte, solo tengo una duda:

Cita:
GET/POST: ya todos conocemos estos métodos de envios de variables, funcionan, sin problema, pero mucho cuidado al momento de usarlas, primero elegir cuidadosamente cual de las 2 usar, si la página tiene usuarios que harán búsquedas y volverán continuamente a la página anterior usen GET, si la información es delicada, tratemos de usar POST o usar GET con datos que no digan nada al usuario, un ejemplo de un mal get: ?nombre=juan+sanchez, un ejemplo de un buen get: nm=56
¿Por que no es recomandable usar GET con nombres descriptivos, digo, si quiero hacer una página como: ?p=esto-es-un-titulo con Mod Rewrite se hace /esto-es-un-titulo

Saludos
  #8 (permalink)  
Antiguo 20/06/2011, 09:37
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 8 meses
Puntos: 336
Respuesta: Entrevistas de Trabajo PHP

en ese caso si estaría bueno usarlo, el problema es cuando aparece demasiada información que no debería aparecer de modo que algun usuario mal intencionado utilice esa información o la altere, te doy unos ejemplos:

add_score=100
aquí se entiende que este código dará puntos al usuario, entonces lo cambia por add_score=999999

password=ark786
aquí se ve el password en pantalla, muy malo!

pero si quieres usar mod rewrite entonces esta bien, en ese caso buscas intencionalmente que el usuario vea la información, sin embargo no creo que debas hacer eso en una prueba XD
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #9 (permalink)  
Antiguo 20/06/2011, 09:59
Avatar de rikardoz  
Fecha de Ingreso: abril-2011
Ubicación: En mi casa
Mensajes: 165
Antigüedad: 13 años, 7 meses
Puntos: 46
Exclamación Respuesta: Entrevistas de Trabajo PHP

Cita:
Iniciado por stramin Ver Mensaje
en ese caso si estaría bueno usarlo, el problema es cuando aparece demasiada información que no debería aparecer de modo que algun usuario mal intencionado utilice esa información o la altere, te doy unos ejemplos:

add_score=100
aquí se entiende que este código dará puntos al usuario, entonces lo cambia por add_score=999999

password=ark786
aquí se ve el password en pantalla, muy malo!

pero si quieres usar mod rewrite entonces esta bien, en ese caso buscas intencionalmente que el usuario vea la información, sin embargo no creo que debas hacer eso en una prueba XD
en realidad podrias mostrar el password en pantalla si lo sacas encriptado pero obviamente no seria bueno ya que los buscadores podrian indexearlo y seria algo muy malo ya que validarias logins o cosas asi, es por eso no usar tanto GET, ya que aveces los buscadores INDEXEAN las busquedas con GET imaginate si haces tu login atravez de GET, login.php?user=Ricardo&pass=MiPass(asiseaENCRIPTAD O) un buscador me indexearia y cualquier persona entraria usando mis credenciales.
__________________
Agregadecer no cuesta nada O SI?

Etiquetas: trabajo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 8 personas




La zona horaria es GMT -6. Ahora son las 06:47.