Desenvolvimento de Software Multiplataforma
O tecnólogo em Desenvolvimento de Software Multiplataforma tem como objetivo formar profissionais capazes de desenvolver software para diversas plataformas, tais como Web, Desktop, Móvel, em Nuvem Internet das Coisas, empregando conceitos de Segurança da Informação e Inteligência Artificial. Assim como especializar profissionais para trabalhar com metodologias ágeis de gestão de projetos, versionamento, integração e entrega contínua de software, visando desenvolver soluções de software que atendam os critérios de qualidade exigidos pelo mercado. Além disso, pretende-se preparar os egressos para estabelecer relacionamentos produtivos; desenvolver a capacidade de comunicação, inclusive em língua estrangeira; utilizar raciocínio lógico; gerar soluções inovadoras; saber posicionar-se enquanto profissional e cidadão ético, com responsabilidade social e ambiental.
- Profissional
- Por que precisar de um tecnólogo em DSM?
- Mercado de Trabalho
- Duração do Curso
O Tecnólogo em Desenvolvimento de Software Multiplataforma tem como perfil o profissional que projeta, desenvolve e testa software para múltiplas plataformas, aplicações em Nuvem e Internet das Coisas. Seleciona e aplica conceitos, métodos e tecnologias de Linguagens de Programação, Banco de Dados, Engenharia de Software, Segurança da Informação e Inteligência Artificial, propondo soluções tecnológicas. Realiza análise estatística de dados para apoiar a tomada de decisão. Coordena projetos e equipes de desenvolvimento de software.
Trata-se de um profissional capaz de trabalhar com toda as áreas de desenvolvimento de uma aplicação em multiplas plataformas. O perfil deste tipo de profissional é chamado de "T-Shaped", pois são pessoas que têm conhecimento em diversos assuntos, representado pela parte de cima do T, e é especialista em determinado assunto, possuindo um conhecimento bem aprofundado em diversas plataformas, representado pela parte vertical do T. Além disto, este profissional é responsável por desenvolver as funcionalidades dos sistemas em diversas plataformas, levantar os requisitos junto ao cliente, e principalmente entender as regras de negócio na qual o projeto está inserido, identificando as necessidades e demandas, propondo assim soluções criativas, dinâmicas e principalmente tecnologias embarcadas com muita inovação.
Segundo dados da Associação Brasileira de Empresas de Tecnologia da Informação e Comunicação (Brasscom), o mercado nacional emprega 1,56 milhão de trabalhadores atualmente, com mais de 40 mil postos de trabalho criados em 2019. Desse montante, 42,8% está em São Paulo. A previsão é de que o setor demande, até 2024, 70 mil profissionais por ano, cerca de 20 mil a mais do que se formam em cursos da área de TIC. A rea Softwares e Serviços TIC, uma das principais em que o egresso poderá atuar, possui 656.711 postos de trabalho, com um aumento de quase 30 mil vagas em 2019. O Tecnológico em Desenvolvimento de Software poderá atuar em grandes empresas, como especialista ou gestor; em empresas menores, com perfil de atuação mais generalista; por conta própria, no modelo autônomo, bem como empreender e criar sua própria empresa. Organizações não governamentais. Órgãos públicos. Institutos e Centros de Pesquisa.
O curso de Curso Superior Tecnológico em Desenvolvimento de Software tem duração de 6 semestres, sendo:
- Presencial com 20% de carga oferecida remotamente.
Estimula-se a utilização da abordagem por problema e por projetos, onde são abordados:
- Ensino Híbrido;
- Metodologias Ativas;
- Aulas expositivas e dialogadas comtemplando ou não atividades;
- Aulas práticas em laboratórios para sedimentação da teoria;
- Pesquisas científicas desenvolvidas com possível apresentação em evento científico;
- Integração entre componentes.
Competências Profissionais
- Analisar e corrigir, scripts maliciosos, Cross-Site-Scripting buscando um padrão de segurança recomendado no desenvolvimento das aplicações.
- Aplicar conceitos de álgebra no desenvolvimento de aplicações e sistemas.
- Aplicar linguagens de programação Back-end e raciocínio lógico adequados para resolução de situações problema e ou desenvolvimento de projetos diversos.
- Aplicar linguagens voltadas a Inteligência Artificial para atender as particularidades de desenvolvimento de projetos específicos.
- Aplicar métricas de usabilidade e elaborar avaliações Heurísticas e Inspeção Semiótica.
- Aplicar princípios de matemática e estatística na solução de problemas complexos.
- Aplicar técnicas de Search Engine Optimization, conjunto de estratégias e métodos para melhorar o posicionamento de páginas da Internet nos mecanismos de buscas.
- Aplicar técnicas de Segurança da Informação na estruturação e desenvolvimento de banco de dados no atendimento das necessidades do projeto e na segurança dos dados.
- Avaliar as abordagens de desenvolvimento híbrido, multiplataforma ou nativo e selecionar a melhor abordagem para atender a necessidade do cliente.
- Construir páginas web utilizando linguagem de marcação de acordo com a necessidade do segmento ou projeto buscando recursos que sejam adaptados aos mais diversos dispositivos.
- Desenvolver comunicação interpessoal, compreensão e interpretação elementar em situações familiares cotidianas e profissionais que envolvam expressão de ideias, negociação, análise e elaboração de documentos, gráficos, diagramas e símbolos em inglês.
- Desenvolver objetos inteligentes, com capacidade de interação entre diversas tecnologias e compor o cenário de Internet das Coisas.
- Desenvolver projetos de Banco de Dados utilizando diferentes abordagens de modelagem e implementação a fim de garantir a qualidade dos dados.
- Desenvolver softwares baseados em metodologias e técnicas de programação que visam a segurança das aplicações e do usuário.
- Desenvolver soluções de software e produtos empregando conceitos e técnicas de Design Digital e Visual.
- Dimensionar e estruturar os recursos necessários para implantação de um site/e-commerce entre outros projetos.
- Distinguir e empregar as diversas metodologias e conceitos de desenvolvimento de software nos projetos para atender as necessidades e resolver problemas, aplicando conceitos de lógica de programação.
- Empreender, exercer a liderança, identificar oportunidades de mudanças e projetar soluções inovadoras baseadas em tecnologias da informação nas organizações.
- Empregar as melhores práticas da Arquitetura da Informação no desenvolvimento de software para Dispositivos Móveis, Web e Desktop.
- Empregar conceitos de Experiência do Usuário (UX) e Experiência do Consumidor (CX) para elaboração de perfil do usuário/consumidor, personas, jornada do usuário/consumidor e pontos de contato.
- Empregar estruturas de dados adequadas para o desenvolvimento de software para atender a diversidade de projetos e plataformas.
- Empregar fundamentos de sistemas operacionais no desenvolvimento de software.
- Empregar linguagens de Programação Orientada a Objetos e utilizar Padrões de Projetos no desenvolvimento de aplicações.
- Empregar metodologias que visem garantir critérios de qualidade no desenvolvimento de uma solução computacional.
- Empregar os aspectos éticos e legais relacionados aos direitos e propriedades intelectuais inerentes à utilização e desenvolvimento de software.
- Especificar os requisitos, projetar e documentar soluções de software baseadas no conhecimento apropriado de teorias, modelos e técnicas, observando as necessidades dos projetos.
- Gerenciar projetos de sistemas de informação quanto aos objetivos, custos, recursos, escopo, riscos e prazos.
- Identificar as necessidades dos projetos buscando adaptá-las aos mais diversos meios de hospedagem, Compartilhado, Cloud, Virtual Private Server, Colocation e Servidor Dedicado, utilizando o recurso adequado de cada um.
- Identificar linguagens de programação Back-end para diversos tipos de desenvolvimento desktop, web ou mobile, mostrando compreensão da escolha de cada uma delas para adequação em projetos de diversas áreas.
- Implantar sistemas nas diversas infraestruturas de Redes de Computadores, buscando a melhor performance.
- Implementar sistemas interativos, utilizando os métodos e técnicas da Interação Humano Computador para Desktop, Web, Tablet, Smartphone e para Internet das Coisas (IoT).
- Modelar e implantar processos de negócio, propor soluções de TI a fim de aumentar a competitividade das organizações.
- Planejar a melhor estratégia para documentação e versionamento dos softwares buscando as melhores práticas do mercado.
- Propor soluções para mineração de dados, nas quais as necessidades dos projetos e as situações problema sejam atendidas (Mobile, Back-end)
- Selecionar e empregar tecnologias de inteligência artificial aplicáveis ao desenvolvimento de aplicações para dispositivos móveis e web.
- Utilizar adequadamente as técnicas de armazenamento e tratamento de dados não-estruturados, visando qualidade, manutenção e segurança;
- Utilizar adequadamente os princípios de armazenamento e tratamento de dados a fim de suportar a recuperação de dados utilizados em aplicações.
- Utilizar linguagens de programação orientada a objetos e raciocínio lógico adequados para resolução de situações problema e ou desenvolvimento de projetos diversos.
Competências Sócioemocionais
- Demonstrar capacidade e interesse na construção de relacionamentos profissionais.
- Demonstrar ética profissional.
- Agir com pensamento crítico voltado à resolução de situações-problema.
- Demonstrar capacidade de análise, negociação e tomada de decisão.
- Evidenciar capacidade de adoção comportamental segundo as circunstâncias do ambiente ou diante de argumentos consistentes.
- Responder com empatia a emoções e necessidades manifestadas por outras pessoas.
- Evidenciar desinibição e desprendimento para lidar com pessoas de cargos superiores.
- Atuar de forma colaborativa quando do trabalho em equipe.
- Atuar com liderança em função dos contextos do trabalho.
- Demonstrar capacidade de adotar em tempo hábil a solução mais adequada entre possíveis alternativas.
- Contribuir para o alcance de objetivos comuns.
- Demonstrar habilidade para escutar atentamente seu interlocutor.
- Demonstrar tendência a ajustar situações e estabelecer acordos.
- Demonstrar autonomia intelectual e de ação.
- Apresentar argumentos logicamente encadeados a respeito de um determinado assunto.
- Demonstrar capacidade de lidar com situações novas.
- Evidenciar iniciativa e flexibilidade para adaptar-se a novas dinâmicas.
- Comunicar-se com eficiência nos contextos do trabalho, com a utilização da terminologia técnica e/ou científica e de acordo com os gêneros textuais e modelos convencionados (documentação e redação técnica).
- Utilizar, nos contextos do trabalho, elementos da Tecnologia de Informação e Comunicação (TICs)
- Coordenador
- Horário do Curso
Professor: Francisco Felinto da Silva Junior
E-mail Institucional: francisco.felinto@fatec.sp.gov.br
Turma da Noite
Segunda a Sexta: 19h00 às 22h40
Sábado: 13h50 às 17h30
Matriz Curricular
1º Semestre | 2º Semestre | 3º Semestre | 4º Semestre | 5º Semestre | 6º Semestre |
---|---|---|---|---|---|
Algoritmos e Lógica de Programação | Banco de Dados – Relacional | Gestão Ágil de Projetos de Software | Internet das Coisas e Aplicações | Programação para Dispositivos Móveis II | Ética Profissional e Patente |
Modelagem de Banco de Dados | Estrutura de Dados | Banco de Dados - Não relacional | Experiência do Usuário | Inglês III | Estágio Supervisionado em Desenvolvimento de Software Multiplataforma |
Engenharia de Software I | Engenharia de Software II | Interação Humano Computador | Programação para Dispositivos Móveis I | Segurança no Desenvolvimento de Aplicações | Inglês IV |
Sistemas Operacionais e Redes de Computadores | Técnicas de Programação I | Técnicas de Programação II | Inglês II | Computação em Nuvem I | Qualidade e Testes de Software |
Desenvolvimento Web I | Desenvolvimento Web II | Inglês I | Integração e Entrega Contínua | Laboratório de Desenvolvimento para Dispositivos Móveis | Computação em Nuvem II |
Design Digital | Matemática para Computação | Desenvolvimento Web III | Laboratório de Desenvolvimento Web | Aprendizagem de Máquina | Processamento de Linguagem Natural |
Álgebra Linear | Estatística Aplicada | Fundamentos da Redação Técnica | Laboratório de Desenvolvimento Multiplataforma | ||
Mineração de Dados |