You're the Engineer! Think Big!

Post on 16-Apr-2017

169 views 3 download

Transcript of You're the Engineer! Think Big!

YOU’re

The EngineerThink Big!

2

?

What we gonna talk

Computer ScienceLittle discuss about computer science

ecosystem across the World and Turkey

Engineering, Engineer? WHO!Are we coders, developers, programmers? Or engineers?$ whoami

3

Fill blanks: Software is ….Software may would be something that

you were not aware of?

Software + EngineeringBe an engineer who create Software(s) that solve real world problem(s)

Software ≠ MoneySoftware development may not make

you earn too much money as you expect

Software > ProjectA Software may be bigger than a single project

4

Sw Eng. Basics & PrinciplesSoftware Engineering is not only all

about coding! It is everything about the man & the world!

Where to StartCreation of a software:sw = Software()cs = Customer() # Not Counter Strikedo:

sw.gather(cs.requirements)sw.analyse(cs.requirements)sw.plan(self)sw.design(self)sw.develop(self)sw.test(self)sw.release(sw.get_version())

while True

Think first, not developDeveloping is an expensive progress so

do not waste it

Building Sw Architecture> Full-Stack Development> Logic Decision> N-Tier Architecture> Lifecycle> Design Patterns> Choosing Technology Stack

5

Thanks.

Career GoalsPlan your career goals in the industry as

a Software Engineer

ClosingAsk your questions and give me a chance to answer

Computer ScienceComputer science is the study of the theory, experimentation, and

engineering that form the basis for the design and use of computers.

7

Detail Definition

Computer ScienceIt is the scientific and practical approach to computation and its applications and the systematic study of the feasibility, structure, expression, and mechanisation of the methodical procedures (or algorithms) that underlie the acquisition, representation, processing, storage, communication of, and access to information. An alternate, more succinct definition of computer science is the study of automating algorithmic processes that scale. A computer scientist specialises in the theory of computation and the design of computational systems.

8Computer Science

9

What? Who?

Engineering, Engineer? WHO!

Engineering is: the creative application of scientific principles to design or develop structures, machines, apparatus, or manufacturing processes, or works utilizing them singly or in combination; or to construct or operate the same with full cognizance of their design; or to forecast their behavior under specific operating conditions; all as respects an intended function, economics of operation or safety to life and property.By: American Engineers' Council for Professional DevelopmentThe major basic branches of

chemical engineering, civil engineering, electrical engineering, mechanical engineering, and industrial engineering.

Engineer is: competent by virtue of his/her fundamental education and training to apply the scientific method and outlook to the analysis and solution of engineering problems. He/she is able to assume personal responsibility for the development and application of engineering science and knowledge, notably in research, design, construction, manufacturing, superintending, managing and in the education of the engineer. His/her work is predominantly intellectual and varied and not of a routine mental or physical character. It requires the exercise of original thought and judgement and the ability to supervise the technical and administrative work of others. Roles and expertise:

Design - Analysis - Specialization and management

We’re developers/coders/engineers?Compare those titles and pick the best fit for yourself

11

Coders / Developers

Enjoy Coding

Quality of code

Brilliant solutions

Efficiency

12

Software EngineerSoftware Engineer is a career goal over of the computer science career options. Being a software engineer has a background including 4-year-of BSc study and coding / developing experience.

Analyse

Design

Develop

Test

Release

Specialisation

Communication

Management

13

Discuss your opinion

Fill blanks: Software is ….

User Application OS HW

WikipediaComputer software, or simply software, is that part of a computer system that consists of encoded information or computer instructions, in contrast to the physical hardware from which the system is built.

Computer software includes computer programs, libraries and related non-executable data, such as online documentation or digital media. Computer hardware and software require each other and neither can be realistically used on its own.

Software + EngineeringSolve real world problems as an Engineer by creating Software

15

All kinds listed above are software variations. Only vary regarding purpose and domain of use. They all must have an Architecture!

All above are software?

Application softwareuses the computer system to

perform special functions

System softwareprovide a platform for running

application software

Malicious softwareharm and disrupt computers

Desktop applications

Server software

Embedded software

16

Do your best and respect your knowledge, effort, time & experience

The most important thing is not the money, right. But, the money is an important asset for our lives. So, how can we keep them in the balance? Any opinion??

Software ≠ Money

17

A Software may be bigger than a Project

Software > Project

Some Softwares’ scope may include more than a single project. That means regarding your software requirements you might needto plan it into multiple projects in a parent project.

System Adapters DBO Wrappers API Interfaces Presentation(Clients)

18

Software Engineering Basics& Principles

7 Basic Principles

1. Manage using a phased life-cycle plan.

2. Perform continuous validation.

3. Maintain disciplined product control.

4. Use modern programming practices.

5. Maintain clear accountability for results.

6. Use better and fewer people.

7. Maintain a commitment to improve the

process.

19

Manage using a phased life-cycle plan.

Where to Start

Requirements

Analysis

Design

Testing

Deployment

Maintenance

UpdateDevelopment

20

Think first, not develop

t0

Requirements Analysis DevelopmentTesting

Maintenance Development DesignAnalysis

Building Sw ArchitectureRespect your experience and be familiar with Software Paradigms

22

the methods and steps, which are taken while designing the software

Building Sw Architecture:Software Paradigms

Software Development ParadigmRequirement gatheringSoftware designProgramming

Software Design ParadigmDesignMaintenanceProgramming

Programming ParadigmCodingTestingIntegration

23

System

Backend / Server

Database

UI / Client

Building Sw ArchitectureFull-Stack Development

24

Building Sw Architecture:Logic Decision

0102

03

25

a client–server architecture in which presentation, application processing, and data management functions are physically

separated. The most widespread use of multitier architecture is the three-tier architecture.

Building Sw Architecture:N-Tier Architecture

26

Building Sw Architecture:Lifecycle

Building Sw Architecture:Design Patterns

Singleton

Factory

Proxy

Adapter

28

Python

Php

Oracle

Java

Scala

MSSQL

91%

52%

37%

46%

76%

25%

Building Sw Architecture:Choosing Technology Stack

29

Career GoalsGraduation of Computer Studies

Less than 2.4% of college students

graduate with a degree in

computer science. And the

numbers have dropped since last

decade

< 2.4%

30

improve your non-technical skills more

Career Goals

Emotional Quotient

Organised

Self-Disciplined

Social

31

This one is a promotional one ;)

The Secret

32

Extra Infographic

SUCCESS

589%

Growwel TrainingThere is no elevator to success. You have to take the stairs...

************

33

WHAT WHY WHERE WHEN WHO HOW

Any Question ???

34

Fatih[\/at/\]karatana.com

+90 (533) 4** 2***

Fatih KaratanaSr.Full-Stack Software Developer & Software Architect

Get in Touch github.com/fatihzkaratana

THANKS FOR WATCH !!!