Vacante Java Senior - NOVUTEK

/**
* solo necesitas saber uno de las tecnologías.
*/

def frameWorkFrontEnd = [
        [nombre: 'SpringMVC',   tiempoExperiencia: 3],
        [nombre: 'Struts',      tiempoExperiencia: 3],
        [nombre: 'JSF',                 tiempoExperiencia: 3]
]

/**
* Tecnologías que necesitas saber
* para cubrir el perfil laboral.
*
* nombre: Es el nombre[version] del framwork,
* tiempoExperiencia: En años
*/

def frameWorkObligatorios = [
        [nombre: 'Spring Core', tiempoExperiencia: 3],
        [nombre: 'Hibernate',   tiempoExperiencia: 3],
        [nombre: 'ERwin',               tiempoExperiencia: 1],
        [nombre: 'JavaScript & jQuery', tiempoExperiencia: 3]
]

/**
* Servidores en los que necesitas estar familiarizado
*/

def servidores = [
        [nombre: 'WebLogic Server', tiempoExperiencia: 3],
        [nombre: 'Oracle 11g',          tiempoExperiencia: 3],
]

/**
* Notaciones con las que debes estar familiarizado
*/

def notaciones = [
        [nombre: 'JSON'], [nombre: 'XML']
]

println "#############################################"
println "# Bienvenido a la propuesta laboral NOVUTEK #"
println "#############################################\n"

print "Por favor ingresa tu nombre: "
def nombre = System.console().readLine();

println """
Hola ${nombre}, es importante que sepas que:

La vacante es para desarrollar en el lenguaje Java V[5|6|7]

La propuesta ecónomica será de acuerdo a tu experiencia y aptitudes, estaremos en contacto contigo para hacerte una propuesta ecónomica formal.

La zona de trabajo es por Reforma. Méx. Distrito Federal.

El horario de trabajo es de lunes a viernes de 9:00-19:00 hrs.

Contamos con prestaciones de ley.
        * Aguinaldo
        * Prima vacacional
        * Días vacacionales
        * Cotización: IMSS, AFORE, Infonavit.

"""

print "¿Estás interesado? [s|n]: "
if(System.console().readLine().toLowerCase().startsWith("n")) {
        println "NOVUTEK agradece mucho tu participación."
        System.exit(0)
}
println ''

def noSabe = []

frameWorkObligatorios.each { f ->
        print "¿Sabes ${f.nombre} con una experiencia de ${f.tiempoExperiencia} años? [s|n]: "
        if(System.console().readLine().toLowerCase().startsWith("n")) {
                noSabe << f
        }
}

println ''

println '¿Sabes alguna de las siguientes tecnologías?'
frameWorkFrontEnd.each { f ->
        println "   ${f.nombre} con una experiencia de ${f.tiempoExperiencia} años?"  
}
print "[s|n]: "
if(System.console().readLine().toLowerCase().startsWith("n")) {
                noSabe << [nombre:'Algun framework para el FrontEnd', tiempoExperiencia: null]
}

println ''

servidores.each { s ->
        print "¿Tienes conocimiento en el servidor ${s.nombre} con una experiencia de ${s.tiempoExperiencia} años? [s|n]: "
        if(System.console().readLine().toLowerCase().startsWith("n")) {
                noSabe << s
        }      
}

println ''

notaciones.each { s ->
        print "¿Entiendes como se estructura ${s.nombre}? [s|n]: "
        if(System.console().readLine().toLowerCase().startsWith("n")) {
                noSabe << s
        }
}

def email = 'kenia.alvarado.gonzalez@gmail.com'

if(noSabe.size() != 0) {
        println "\n\nTe agradecemos mucho ${nombre} pero es necesario que sepas:"
        noSabe.each { ns ->
                println "       * ${ns.nombre}"
        }
        println "\n\n>> Por favor haznos llegar tu C.V. para tenerte en cartera al correo electrónico: ${email}"
} else {
        println "\n\n>> Te agradecemos mucho tu participación ${nombre}, haznos llegar tu C.V. para poder platicar la posibilidad de trabajar con nosotros al correo electrónico: ${email}"
}