Quais os requisitos para se tornar um analista de sistemas?

Atualmente, e possível ser um profissional exclusivamente técnico?

Já soube de fábrica de software adotar isso. Não recomendo ninguém a se limitar assim e a clientes terem cuidado com fábricas de softwares.

A tecnologia evolui. O que eu aprendi há 5 anos atrás não serve pra nada hoje. Nesse ritmo, vc acha que alguém “parcialmente técnico” conseguiria se manter no topo da parada?

(…)O que eu aprendi há 5 anos atrás não serve pra nada hoje. (…)
[/quote]

Só se você for bitolado em ferramenta, o essencial muda muito pouco, por exemplo:

programação estruturada (lógica de programação) - 50 anos
programação OO - 40 anos
modelo relacional - 40 anos

e por aí vai …, conhecer o framework ou linguagem da moda não é diferencial para ninguém …

De qualquer maneira, o ponto que eu quis colocar citando o blog do Shoes é que aquilo que geralmente é conhecido como “analista de sistemas”, ou simplesmente “o cara que fica fazendo meio campo entre cliente/usuário e desenvolvedor” é um cargo que se torna cada vez mais desnecessário à medida que desenvolvedores conhecem o domínio da aplicação em que trabalham e desenvolvem soft skills.

[quote=javaflex]
Não recomendo ninguém a se limitar assim e a clientes terem cuidado com fábricas de softwares.[/quote]

Por quê?

[quote=rmendes08]

Só se você for bitolado em ferramenta, o essencial muda muito pouco, por exemplo:

programação estruturada (lógica de programação) - 50 anos
programação OO - 40 anos
modelo relacional - 40 anos [/quote]

Confesso que requer esforço pra não ser bitolado com algo que vc passa a maior parte do dia de trabalho. Deixa eu adivinhar, vc não usa frameworks e linguagens?

[quote=rmendes08]
e por aí vai …, conhecer o framework ou linguagem da moda não é diferencial para ninguém …[/quote]

O mercado parece discordar de você.

[quote=rmendes08]
De qualquer maneira, o ponto que eu quis colocar citando o blog do Shoes é que aquilo que geralmente é conhecido como “analista de sistemas”, ou simplesmente “o cara que fica fazendo meio campo entre cliente/usuário e desenvolvedor” é um cargo que se torna cada vez mais desnecessário à medida que desenvolvedores conhecem o domínio da aplicação em que trabalham e desenvolvem soft skills.[/quote]

Se tudo que precisa para eliminar os analistas de sistemas é isso então o futuro dos analistas está garantido porque os projetos que não forem capazes de pagar TOP $$$$ para esse tipo de super-profissional ainda vai precisar de alguém pra fazer o meio de campo.

Claro que requer. E os mais esforçados deveriam ser melhor premiados, ou não ?

Claro que uso, para ganhar produtividade. Mas eu não teria dificuldade nenhuma se tiver que migrar de Java para C#, ou ainda se tivesse sair do mercado Web para programar micro-dispositivos. Particularmente, já experimentei de tudo um pouco. Enfim, se mudar a cor do capim eu não morro de fome …

[quote=ImpossiveI]

Muito pelo contrário, é justamente do mercado que eu tiro minha percepção. Para uma empresa que produz um homebroker por exemplo, tem muito mais peso um programador que conheça o mercado financeiro do que o cara que sabe fazer crud em 5 frameworks diferentes.

Na prática, um programador com o perfil que descrevi nem é tão super-profissional assim, é a coisa mais comum do mundo programadores com alguns anos de experiência conhecerem muito bem contabilidade, lei trabalhista, etc. Na prática, essa decisão de colocar um “analista-proxy” entre o programador e o cliente/usuário é unicamente da empresa, e não tem nada a ver com restrição de mercado ou coisa do tipo.

[quote=ImpossiveI][quote=rmendes08]
De qualquer maneira, o ponto que eu quis colocar citando o blog do Shoes é que aquilo que geralmente é conhecido como “analista de sistemas”, ou simplesmente “o cara que fica fazendo meio campo entre cliente/usuário e desenvolvedor” é um cargo que se torna cada vez mais desnecessário à medida que desenvolvedores conhecem o domínio da aplicação em que trabalham e desenvolvem soft skills.[/quote]

Se tudo que precisa para eliminar os analistas de sistemas é isso então o futuro dos analistas está garantido porque os projetos que não forem capazes de pagar TOP $$$$ para esse tipo de super-profissional ainda vai precisar de alguém pra fazer o meio de campo.
[/quote]
Impossivel, então o que você quer dizer com isso? Que profissionais que fazem o meio de campo sempre serão necessários?

Eu vejo que o mercado se adaptou de tal forma que esse cara do meio de campo (com parcos conhecimentos técnicos) tem se tornado desnecessário e cada vez mais pessoas com skills de produto x técnico são mais procuradas.
Eu tinha entendido que você compartilhava da mesma opinião anteriormente, agora fiquei em dúvida…

[quote=ImpossiveI][quote=rmendes08]
e por aí vai …, conhecer o framework ou linguagem da moda não é diferencial para ninguém …[/quote]

O mercado parece discordar de você.
[/quote]
Sim e não. Independente da quantidade de frameworks que a pessoa conhece, o importante é ter um forte embasamento técnico. Já vi alguns que não conheciam tanto “frameworks da moda”, mas que pela formação e base que adquiriu, em pouco tempo aprendeu, se adaptou e acabou por ensinar coisas do fw/linguagem a outros que já lá estavam.

[quote=Júlio Murta][quote=javaflex]
Não recomendo ninguém a se limitar assim e a clientes terem cuidado com fábricas de softwares.[/quote]

Por quê?[/quote]

Eu acho que o problema não é o perfil técnico ser um limitador, e sim que a maioria das empresas desenvolve um alto escalão que se especializa em ocultar desses técnicos o conhecimento do domínio, mas ao meu ver, o problema neste caso é a natureza da sua relação com a empresa e não com o fato de vc ser técnico.

Esse é um dos meus pontos.

Apenas na sua fantasia socialista.

Muito conveniente escolher duas plataformas estagnadas ao invés de iOS para Android, por exemplo. :wink:

[quote=rmendes08]
Muito pelo contrário, é justamente do mercado que eu tiro minha percepção. Para uma empresa que produz um homebroker por exemplo, tem muito mais peso um programador que conheça o mercado financeiro do que o cara que sabe fazer crud em 5 frameworks diferentes.[/quote]

Isso prova?

[quote=rmendes08]
Na prática, um programador com o perfil que descrevi nem é tão super-profissional assim, é a coisa mais comum do mundo programadores com alguns anos de experiência conhecerem muito bem contabilidade, lei trabalhista, etc.[/quote]

Não disse que eram incomum, e sim que recebem muito mais pelo seu conjunto de habilidades.

[quote=rmendes08]
Na prática, essa decisão de colocar um “analista-proxy” entre o programador e o cliente/usuário é unicamente da empresa, e não tem nada a ver com restrição de mercado ou coisa do tipo.[/quote]

Que afirmação mais sem sentido. Quer dizer que a empresa não toma sua decisão baseado no mercado? Então é baseada em que?

[quote]

[quote=leandronsp]
Eu vejo que o mercado se adaptou de tal forma que esse cara do meio de campo (com parcos conhecimentos técnicos) tem se tornado desnecessário e cada vez mais pessoas com skills de produto x técnico são mais procuradas.
Eu tinha entendido que você compartilhava da mesma opinião anteriormente, agora fiquei em dúvida…[/quote]

Acho que se vc esta desenvolvendo um produto, o cliente não existe durante a fase projeto. Então não precisa ninguém pra fazer o meio de campo[/quote]

Se bem que, mesmo desenvolvendo um produto, ainda assim o processo passa pelo responsável por garantir que o que está sendo construído está de acordo com a visão do produto, porque se cada um tem uma visão do que o produto deve ser nós temos caos.

Refere-se ao Swift ou Objective-C? Onde está a grande novidade nisso? Há muito tempo não é mais necessário apenas Java para desenvolver para Android. É possível utilizar C#, javascript ou até mesmo Delphi e (pasmem!) Clojure.

Até onde sei, Objective-C e Swift suportam OO e programação imperativa, logo não seria tão complicado pular de Java ou C# para um projeto com essas linguagens.

Não posso falar do Java, já que não trabalho com isso. Porém temos aí o novo Java 8 implementando novas uma série de novas funcionalidades, e o c# está acompanhando muito bem as inovações do mercado também. Haja vista que as últimas versões do c# trazem facilidades no desenvolvimento de métodos assíncrono.

Refere-se ao Swift ou Objective-C? Onde está a grande novidade nisso? Há muito tempo não é mais necessário apenas Java para desenvolver para Android. É possível utilizar C#, javascript ou até mesmo Delphi e (pasmem!) Clojure.

Até onde sei, Objective-C e Swift suportam OO e programação imperativa, logo não seria tão complicado pular de Java ou C# para um projeto com essas linguagens.

Não posso falar do Java, já que não trabalho com isso. Porém temos aí o novo Java 8 implementando novas uma série de novas funcionalidades, e o c# está acompanhando muito bem as inovações do mercado também. Haja vista que as últimas versões do c# trazem facilidades no desenvolvimento de métodos assíncrono.[/quote]

Sem dúvida. Na verdade, eu estava falando das 4000 novas APIs incluídas só no versão 8 do iOS. :smiley:

Soma com a API do Android, se vc suporta essa plataforma, boa sorte pra quem quiser cair paraquedas em desenvolvimento mobile daqui uns anos, tentar competir com programadores experientes na plataforma não vai ser fácil.

Que seja sair da Web para plataformas Mobile, o dispositivo já está abstraído pela plataforma mesmo … como eu disse, só muda a cor do capim …

Que conhecer um determinado nicho de mercado pode pesar mais para uma contratação ou promoção do que conhecer uma tecnologia específica.

Estou apenas dizendo que colocar o “analista-proxy” é uma decisão interna. Uma empresa não precisa contratar super-profissionais para aproximar seus desenvolvedores de seus clientes, podem até existir dificuldades de outra natureza (distanciamento geográfico, etc.) mas o valor do salário no mercado de trabalho não é um desses parâmetros …

Lembrando que “pessoas com conhecimento de produto” que o Leandro se refere não é o cliente. Eu concordei que em muitos casos, os desenvolvedores estão se aproximando do produto. No entanto, não faz nenhum sentido uma empresa permitir os desenvolvedores terem acesso livre aos clientes.

[quote=rmendes08][quote=ImpossiveI]

Muito conveniente escolher duas plataformas estagnadas ao invés de iOS para Android, por exemplo. :wink:
[/quote]

Que seja sair da Web para plataformas Mobile, o dispositivo já está abstraído pela plataforma mesmo … como eu disse, só muda a cor do capim …

Que conhecer um determinado nicho de mercado pode pesar mais para uma contratação ou promoção do que conhecer uma tecnologia específica.

Estou apenas dizendo que colocar o “analista-proxy” é uma decisão interna. Uma empresa não precisa contratar super-profissionais para aproximar seus desenvolvedores de seus clientes, podem até existir dificuldades de outra natureza (distanciamento geográfico, etc.) mas o valor do salário no mercado de trabalho não é um desses parâmetros … [/quote]

Não disse que era o parâmetro, e sim o termômetro que reflete a dificuldade de encontrar esse profissional na sua região.

[quote=Júlio Murta][quote=javaflex]
Não recomendo ninguém a se limitar assim e a clientes terem cuidado com fábricas de softwares.[/quote]

Por quê?[/quote]
Eu não gostaria de ficar trabalhando em cima do que já foi feito levantamento sem eu ter participado junto ao cliente, onde só chega especificação com prazo para já programar baseado só em terceiros. Me sentiria um robô. E o cliente muitas vezes sem saber do nível do que se contrata.

Refere-se ao Swift ou Objective-C? Onde está a grande novidade nisso? Há muito tempo não é mais necessário apenas Java para desenvolver para Android. É possível utilizar C#, javascript ou até mesmo Delphi e (pasmem!) Clojure.

Até onde sei, Objective-C e Swift suportam OO e programação imperativa, logo não seria tão complicado pular de Java ou C# para um projeto com essas linguagens.

Não posso falar do Java, já que não trabalho com isso. Porém temos aí o novo Java 8 implementando novas uma série de novas funcionalidades, e o c# está acompanhando muito bem as inovações do mercado também. Haja vista que as últimas versões do c# trazem facilidades no desenvolvimento de métodos assíncrono.[/quote]

Sem dúvida. Na verdade, eu estava falando das 4000 novas APIs incluídas só no versão 8 do iOS. :smiley:

Soma com a API do Android, se vc suporta essa plataforma, boa sorte pra quem quiser cair paraquedas em desenvolvimento mobile daqui uns anos, tentar competir com programadores experientes na plataforma não vai ser fácil.[/quote]
Tendo a base da plataforma, detalhes técnicos se aprende no dia a dia com o projeto já rolando, justamente com esses mais experientes.

[quote=javaflex]
Tendo a base da plataforma, detalhes técnicos se aprende no dia a dia com o projeto já rolando, justamente com esses mais experientes.[/quote]

Sim, os mais experientes podem virar consultores e dar treinamento para novatos no futuro. Meu ponto, que acho passou despercebido, é que existem plataformas HOJE que estão evoluindo tão rápido, que requer um perfil exclusivamente técnico pra conseguir acompanhar todas as mudanças da tecnologia.