Si soy financieramente estable, ¿debo dejar mi trabajo para centrarme en la programación competitiva durante varios meses?

La respuesta corta: no

La larga respuesta:
Hay muchas razones por las cuales las personas no son contratadas. Las entrevistas prueban la inteligencia en bruto, el pensamiento lógico, la resolución de problemas, la velocidad, el estilo de comunicación, el EQ, el ajuste cultural y la capacidad de pensar a través de compensaciones de diseño. Centrarse en la programación competitiva solo puede ayudar a mejorar sus habilidades en algunos de estos. Sugeriría primero intentar identificar cuál es el bloqueador principal para usted. Una manera fácil de hacerlo es pedirle a un amigo inteligente en el que confía (preferiblemente alguien que trabaje en una de estas empresas) que le dé una entrevista práctica y luego le brinde comentarios brutalmente honestos sobre lo que falló. Una vez que tenga esa respuesta, puede determinar en qué trabajar.

Si desea desarrollar habilidades en torno a la ingeniería de software (compensaciones de diseño, trabajar en bases de código más grandes, colaboración, etc.) considere involucrarse en un gran proyecto de código abierto y realmente comprometerse con él.

Además de centrarse en las habilidades técnicas, debe asegurarse de practicar la resolución de problemas en una pizarra. Practique también hablar a través de su proceso de pensamiento con otra persona. Los entrevistadores quieren entender cómo desglosar los problemas y pensar en la complejidad.

Una respuesta alternativa:
8 años en cualquier compañía de tecnología es mucho tiempo. A menos que se esfuerce constantemente, es probable que haya alcanzado un estado estable en el que su crecimiento personal sea plano. Si busca trabajar en una empresa de alta tecnología para obtener nuevas y emocionantes oportunidades, también debe buscar empresas pequeñas / medianas que le den un conjunto de problemas de gran tamaño para abordar y las habilidades que tiene que aprender. Visite AngelList o Y Combinator para conocer empresas interesantes a las que puede unirse. Es más probable que se arriesguen con usted si tiene habilidades brutas pero no es lo suficientemente pulido y verá nuevos desafíos.

Sugeriría no abandonar el trabajo actual. Puedes hacer todo esto mientras estás en el mismo trabajo. La verdad es que ser un programador realmente bueno no es lo único que requieren todas las empresas de tecnología, así que ¿imagina pasar 6 meses siendo un “topcoder” y luego siendo rechazado por algún otro defecto? (Llegaré a esto más adelante en la respuesta).

¿Alguna vez has intentado ser entrevistado de manera simulada? Las entrevistas simuladas son increíblemente buenas para obtener comentarios buenos y honestos sobre cosas que nunca verás en el espejo.

Por ejemplo, tenía un problema que no pensaba demasiado en probar mi código, ni me importaban los enfoques alternativos. También presté poca atención a la aclaración de requisitos. Me estaba yendo muy bien en las preguntas de programación competitiva, pero estas cosas las descubrí cuando mi amigo se burló de mí varias veces. Cambié mi enfoque y seguí simulando entrevistas con diferentes personas. Lo más probable es que ya seas un buen ‘codificador’, solo necesitas convertirte en un buen ‘ingeniero’.

¿Puedes responder desde lo alto de tu cabeza las 5 cosas que aprendiste en los últimos 8 años? Si tiene que pensar demasiado al respecto durante una entrevista, sus posibilidades disminuyen.

Sí, debes seguir practicando un lenguaje y conocerlo profundamente (prefiero C ++). Y mantenga el resto del conocimiento fresco, pero la programación competitiva no es la única manera. De hecho, puedo argumentar que la programación competitiva lo obligará a realizar malas prácticas de programación, a soluciones rápidas y sucias, plantillas, convenciones de nombres erróneos, hacks, etc. La mayoría de las entrevistas no quieren ver nada de eso. La mayoría de los programadores competitivos tienen que trabajar duro para ‘limpiar’ su proceso de pensamiento. Puede que no sea una buena idea preasignar un conjunto de millones de enteros en una entrevista, aunque podría salirse con la suya en SPOJ. La programación competitiva a veces lo obligará a ir por la velocidad y comprometer la claridad, mientras que un entrevistador podría esperar lo contrario. Por mi parte, sé que las entrevistas recientes de Google no tratan tanto de reducir la complejidad del tiempo como de hacer que su código sea ‘escalable’.

Así que recomiendo leer libros como “Cómo descifrar la entrevista de codificación” o pasear por Glassdoor – Get Hired. Ama tu trabajo. para obtener una visión general del proceso y la información detrás de escena. Haz un plan y vete.

Sigue intentándolo y buena suerte.

PD: aparte de todos los compromisos familiares, todavía tienes la noche para ti, ¿no? 🙂

No entres gentilmente en esa buena noche,
La vejez debe arder y desvanecerse al final del día;
Rabia, rabia contra la muerte de la luz.

Gracias por el A2A.
Bueno, parece que tienes mucha experiencia en tu haber. 8 años de experiencia en la industria son más de lo que se requiere actualmente en las empresas. Es sorprendente que después de todos estos años haya desarrollado un interés en la programación competitiva y la inteligencia artificial, etc.

No importa cuánto piense que dejar su trabajo para enfocarse en CP lo beneficiará, no lo hará. Confía en mí en esto. He pensado en esta alternativa muchas, muchas veces. Aunque no tengo el nivel de experiencia que tiene, me encantan los CP y me apasionan los algoritmos, etc. Sin embargo, debe analizar las posibilidades con mucha claridad. Por lo que analicé, descubrí que, al final del día, su experiencia es más importante de lo que clasifica en sitios de programación competitivos. Periodo !!

No digo que debas dejar a un lado esta inclinación que tienes por la IA y la CP y concentrarte en tu trabajo una vez más. Estoy diciendo que dejar tu trabajo por todo esto no es una buena opción para mí. Si eres un apasionado de todo esto, descubrirás formas y tiempo para esto sin importar qué. Sigue trabajando en proyectos paralelos y sigue practicando. Intenta encontrar un equilibrio entre tu trabajo y tus intereses y créeme, esta es la mejor opción para ti. Un gran programador competitivo con más de 8 años de experiencia y muchos proyectos paralelos es una joya para hacer

¡Mantén la calma y comienza a codificar! (No dejes tu trabajo 😉

Estuve en una situación similar hace algún tiempo. Tenía 5 años de experiencia en una compañía decente; No renuncié, pero en su lugar me tomé 6 meses sabáticos. Pasaba unas 12 horas al día practicando CP (además de algún deporte intermedio, como resultado perdí alrededor de 20 libras) y mi mejora total fue algo así como 600 puntos en el topcoder. Confía en mí, esos 600 puntos son muy notables incluso en el trabajo diario de SE: prácticamente dejas de perderte casos de esquina y la creación de prototipos lleva menos tiempo, por ejemplo; pero en la entrevista hacen una GRAN diferencia.
En pocas palabras, medio año después pasé una entrevista con la startup SV y me mudé al Valle. Actualmente trabajo como SWE en Google y gano alrededor de 5 veces más de lo que ganaba antes de tomar mi año sabático. Estoy absolutamente seguro de que no podría pasar la entrevista de Google sin mi sesión de práctica de medio año.

La entrevista de PS Cracking the Code es un libro muy débil / malo, a pesar de todo el marketing. No pierdas tu tiempo en ello.

Hola, por experiencia puedo decirte que no tendrás más tiempo para estudiar o practicar y ciertamente puedo asegurarte que es mejor priorizar tus actividades.

Lo que te propongo es que hagas lo que amas y no lo que te gusta. Esto significa que es absolutamente posible convertirse en un programador competitivo si se concentra apasionadamente en su estudio y deja de lado las actividades sin importancia.

Mis sugerencias para usted son: limite su tiempo de televisión (a nada si es posible), despierte más temprano para estudiar y practicar, trate de pasar al menos dos horas por la noche haciendo lo mismo. Definitivamente necesita planificar su día y descubrir cómo avanzar para lograr sus objetivos.

Por supuesto, trate de tener un equilibrio aquí, no sacrifique el tiempo de su familia porque no vale la pena ganarlo todo, sino perder lo más valioso.

Otra sugerencia es escribir un blog. Es más posible que mencione estas compañías y muchas otras estarían interesadas en sus servicios si tiene una reputación que lo respalde. ¿No es mejor hacer crecer una comunidad de seguidores que elogien tu trabajo?

Sería aún mejor si logras esto teniendo un trabajo diario, que mostrará a los entrevistadores que eres responsable y que terminas lo que comienzas.

Por otro lado, no creo que renunciar a su trabajo para seguir este camino se vea bien en un currículum.

Piensa más alto, supera tus propias expectativas, sé todo lo que puedas ser.

Atentamente.

No sé sobre Google, pero en general funciona. Cuando comencé mi carrera, siempre fallaba en las entrevistas para compañías bien conocidas. Me uní a la pequeña empresa que quería contratarme. Trabajé allí por año. Entonces podría pasar la entrevista a una empresa pequeña o que no sea de TI. Pero aún fallé.
Luego aprendí a resolver “problemas de IQ”, como la búsqueda binaria para encontrar algo o xor números para obtener uno adicional. Hay aproximadamente 5 enfoques y ayuda a resolver casi cualquier “problema de CI” de la entrevista. En la siguiente entrevista, pasé a la compañía de mis sueños.
Lo mismo ocurre con preguntas de habilidad como C ++ o C #. Nadie lo sabe todo. Solo busca en Google posibles preguntas y aprende mucho.
La programación competitiva es la misma. Aprenda enfoques = codifíquelos rápido = pase.
No eres malo, porque no puedes resolver esto sin entrenamiento. La mayoría de las personas que pueden, simplemente estudiaron en las escuelas de matemáticas cuando eran jóvenes y aprendieron enfoques para esto.
La cosa es que los tipos que contratan personas en base a esto creen en el coeficiente intelectual. No hay IQ en realidad. Por ejemplo, puedo pasar cualquier prueba de coeficiente intelectual estándar, porque tenía libros con ellos en la escuela y los resolví por diversión en mi tiempo libre.
Así que solo entrena, aprueba y no le digas a tu empleado sobre tu entrenamiento.

La programación competitiva no cumple.

Únase a algunas iniciativas en la comunidad de código abierto. Deja de trabajar en tus propias ideas, son propensas a succionar … es más fácil unirse a alguien que ya está levantando polvo. Serás más comercializable.

Si su único propósito es ser contratado en Google o FB, le aconsejaría que no lo haga. Pero parece algo que realmente disfrutas de los algoritmos. Si eso es realmente algo que te apasiona, diría que ¡adelante!
No sé cómo piensan los entrevistadores de FB o Google, pero puedo decirte lo que pienso si te entrevisté:
– Si me dices que dejaste tu trabajo porque querías entrenar algoritmos durante meses solo para pasar las entrevistas, pensaría: “Hmm, eso no es lo más inteligente”.
– Sin embargo, si me dices que dejaste tu trabajo porque te apasionaban los algoritmos que decidiste pasar varios meses haciendo competencias de codificación, incluso si te clasificaron, ¡me impresionaría bastante! Significa que estás a cargo de tu vida y no permites que tu trabajo se interponga en tu pasión, y amas los algoritmos, lo cual es genial. Solo tenga en cuenta que hacer eso podría no ayudar cuando se le pregunte: “¿Cómo diseñaría X?”

La programación competitiva de la OMI no agregará nada a su currículum, desde el punto de vista profesional. No desde el punto de vista de las habilidades profesionales.
Lo mejor que tienes ahora es lo que realmente haces en el trabajo. Tu portafolio

Bajo ninguna circunstancia debe renunciar a su trabajo por algo así. Simplemente haga una programación competitiva y vea a dónde lo lleva. Sé inteligente al respecto. Si algo le sucede financieramente, ¿quién puede decir que puede conseguir otro trabajo así en esta economía?

More Interesting

¿Cómo puede contribuir el desarrollo de habilidades al trabajo decente, la productividad y el crecimiento del empleo?

¿Por qué elegiste hacer del póker tu trabajo a tiempo completo?

¿Qué hace uno si quiere cambiar de carrera a los 36 años pero solo tiene experiencia en un campo?

Cómo descifrar la historia escribiendo en Tech Mahindra

Tengo 3 años de desarrollo de software. experiencia. ¿Es tarde para comenzar el aprendizaje automático desde cero y vale la pena?

Cómo conseguir un trabajo en el perfil de SAP HCM

Debería un B Tech. ¿El estudiante de tercer año prefiere prácticas / capacitación en TI y cuál es el mejor campo para hacer lo mismo?

¿Es útil el curso de diseño visual de la Asamblea General para conseguir un trabajo?

¿Cuál sería el mejor trabajo para un asari?

¿De qué maneras puedo ganar más dinero? Tengo 2 - 3 horas libres en la mañana.

Como ingeniero químico, me uní a UltraTech Cement como aprendiz y sueño con peces gordos como Shell y Schlumberger. ¿Ayudará mi experiencia en esta empresa o tengo que ir a estudios superiores?

Banca de inversión: ¿Cuáles son algunas buenas recomendaciones / consejos para conseguir un buen trabajo en la industria financiera?

¿Hay hombres por ahí que considerarían renunciar a sus trabajos o reducir sus horas para mantener a sus esposas si trabajan en una profesión extremadamente ocupada (médicos / cirujanos, abogados, etc.) y desean formar una familia?

¿Puede el equipo de ventas de Google trabajar de forma remota desde casa y nunca desde la oficina?

¿Cómo puede un estudiante indio ser admitido por el MIT para estudios de pregrado?