2009-04-04 26 views
5

Soy un desarrollador de software integrado con más de 5 años de experiencia trabajando en dispositivos móviles. Recientemente perdí mi trabajo y la mayoría de los trabajos en el campo incrustado (que encontré) requieren una autorización de seguridad y no soy elegible para eso. Entonces, por esta razón y también solo para aprender algo nuevo, estoy planeando pasar al desarrollo web (servicios web o cualquier aplicación significativa que use bases de datos, etc.).¿Cómo pasar del desarrollo de software integrado al desarrollo web?

Indíqueme qué factores debo considerar para decidir qué tecnología (relacionada con MSFT/Java/LAMP) debo elegir. Si es posible, también proporcione sugerencias para proyectos que podrían tener alguna aplicación en la vida real, y cuánto tiempo debería asignar para el mismo (ya que tengo mucho tiempo no programado en estos días :)).

Gracias.

+0

¿Dónde están Estás buscando trabajos incrustados? Tienden a estar orientados a la seguridad en el área de DC, pero no a la seguridad externa. Si está abierto a la reubicación, considere lugares en Ohio y Western PA (por ejemplo, Pittsburgh), hay muchos trabajos incrustados allí – Uri

Respuesta

0

Un buen paso siguiente es ir a la ruta del desarrollador de iPhone ya que es muy probable que tenga experiencia en el manejo de las curiosidades del cliente (pérdida de memoria, CPU limitada, etc.). El iPhone/iPod Touch también se beneficia de tener un navegador basado en webkit bastante poderoso que puede ejecutar la mayoría de AJAX que puede escribir y puede interactuar con un componente del servidor.

Para mantener las cosas baratas, puede ejecutar una pila de Java en un servidor EC2 u otro VPS que pueda actuar como la parte del servidor de su aplicación.

Es una inversión de $ 99 para la licencia de desarrollador y $ 5 por mes para un VPS barato para desarrolladores, pero la recompensa puede ser alta si el viento sopla en la dirección correcta y hay luna llena cuando inicia su aplicación)

(ah, y juegos adictivos baratos pueden traer una buena cantidad de dinero de la larga cola, aunque quién sabe cuánto tiempo va a mantener con los juegos serios se puso en marcha en el iPhone por grandes jugadores como EA)

+0

¿No tiene que usar una Mac Intel para desarrollar aplicaciones nativas de iPhone? - Si está hablando de usar solo aplicaciones basadas en servidor, no hay necesidad de gastar $ 99 en la licencia de desarrollador. – Nate

2

Normalmente diría que debe aprovechar su experiencia en programación para máquinas que tienen poca potencia y poca memoria. Sin embargo, el desarrollo web es una bestia muy diferente. Los servidores web generalmente tendrán mucha más capacidad de cómputo y memoria.

Al usar la LÁMPARA o de otra manera, se requiere un paradigma de computación diferente. A menudo pasará más tiempo integrando múltiples procesos (base de datos, lenguaje de scripting, servidor web) que en realidad empujando más velocidad y eficiencia. La transición no es tan fácil.

Así que, como decía la respuesta anterior, es posible que desee considerar ir a la ruta de desarrollo de la web móvil. Puede obtener el kit de desarrollo openmoko/iphone/gphone y comenzar a experimentar. Lo que sea que pueda tener en sus manos (y dentro de su presupuesto).

1

Primero, date cuenta de que estás empezando completamente si cambias. Podrías hacer la transición a iPhone, Android o Symbian, pero yo no apostaría tu sustento a eso a menos que estés acostumbrado a trabajar independientemente en salarios y pagos. Depende de tu personalidad y oportunidad.

En segundo lugar, establecer y trabajar en una red en el área que desea ser empleado. Sé amable, cállate, sé específico: tus oportunidades probablemente estarán relacionadas con a quién conoces y cuánto quieren ayudarte. Demasiados programadores que pasan su vida frente a una pantalla olvidan que el empleador y el cliente no son compiladores. ¡Se bueno!

Desde una perspectiva tierra-para arriba, lo podría hacer en el PHP MySQL winestore/que se encuentra en este libro:

Web Database Applications with PHP and MySQL

Este es un enfoque bastante paso a paso (si es mayor) a Aprender qué hace un programa basado en la web, y un enfoque sobre cómo hacerlo. No te preocupes por AJAX y otras cosas de la web 2.0 hasta que tengas una idea de lo básico; solo será confuso, en mi opinión.

Atlassian, que crea un software de seguimiento de problemas basado en la web escrito en Java, tiene un kit de desarrollo de código abierto y una versión de prueba de 30 días. Si usted está mirando para ver algo de código y trabajar en un área bastante desarrollada, es posible que lo pruebe:

http://confluence.atlassian.com/display/DEVNET/

desarrollo web es un conjunto de habilidades diferentes de incrustada, aunque es posible encontrar una manera de aprovechar su capacidad de concentrarse en detalles y solución de problemas si trabajas en Python o Ruby. La programación web, por naturaleza, está uniendo un conjunto de sistemas y protocolos dispares, donde supongo que incrustado podría hacerlo, pero en un entorno mucho más limitado, con muchas menos opciones y un reinado limitado de picardía.

Normalmente, la programación web basada en lenguajes de fregadero de cocina (PHP, Java, C#) parece generar problemas, por lo que idealmente debería encontrar la manera de aprovechar la habilidad que ha adquirido con un lenguaje basado en rendimiento, no campanas y silbatos. Sin embargo, hay muchas más posiciones Java y C# que Python, así que elige el veneno (miseria) cuidadosamente.

PHP es decente si está buscando entrar en el reino de inicio/bajo-medio-final, mientras que Java/C# pagará mejor pero las circunstancias son típicamente muy diferentes (los entornos corporativos/comerciales son lo que son).

Es posible que desee obtener la certificación en Java o C# (el certificado de PHP es una broma). No le conseguirán un trabajo, pero como ya tiene conocimiento, pero no en el área que busca mejorar, los cursos de certificación le ayudarán a hacer la transición de su conjunto de herramientas y terminología, además de explicar el propósito. Algunos empleadores también se preocupan.

Java Certification (Sun school)

C# Certification

Para algo divertido y Python/Ruby-como, piensan en cuanto a recoger maravilloso, un lenguaje interpretado basado en Java.

http://groovy.codehaus.org/

Ésta es una buena lista de recursos si estás entrar en Java:

Essential Java resources

4

¿Ha considerado el desarrollo del kernel de Linux? Hay muchas compañías en el espacio de electrónica de consumo que necesitan ingenieros de software con conocimiento del desarrollo de controladores de Linux. Esta es una transición bastante fácil para alguien con una buena experiencia integrada y ¡también es muy divertido!

Mejor aún, el libro Linux Driver Development está disponible en línea gratis.

1

También soy un desarrollador de software incrustado que está pensando en pasar al desarrollo web.No porque estoy perdiendo mi trabajo (hay suficientes oportunidades para chicos incrustados en Alemania, donde vivo), sino porque después de 9 años en el campo, me gustaría intentar algo más.

Date cuenta de que no solo estás cambiando de trabajo aquí, sino que estás cambiando industrias. Nadie lo contratará como desarrollador web si no tiene experiencia en este campo, especialmente en el contexto económico actual.

Puede intentar encontrar un trabajo en una empresa de Internet más grande (por ejemplo, un proveedor de servicios) donde se valoren sus habilidades integradas. Vi un puesto de trabajo recientemente para un puesto de desarrollador de VoIP en un ISP. Estaban buscando a alguien familiarizado con C y C++ porque están usando una biblioteca de código abierto escrita en estos idiomas. Eso suena como un buen punto de entrada para un desarrollador integrado que busca cambiar industrias.

Una vez que estés en esta nueva industria, que probablemente tendrá un montón de oportunidades para aprender sobre el desarrollo web: capacitaciones internas sobre las nuevas tecnologías web, aprendiendo de sus colegas con experiencia, trabajo interno ofrece ...

Cuestiones relacionadas