peter kobes - what you should know about a professional software company

Post on 25-May-2015

441 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

What you should know about a professional Software CompanyWhat you should know before you go for a job interview …

DAVINCI ahead of one’s time

Introduction - speaker

Peter Kobes– Executive and CTO of

Davinci Software

Experience– More than 25 years in

software development

– Specialization: • quality assurance• software development and

solution architecture• product innovation

Introduction - audience

• Do you see your future as a software developer?

• Do you work for a SW company?

• Do you do private SW projects?

• Did you read a SW development related book this year?

• Do you follow some SW communities?

• Do you know what is VTP Žilina

• Did you hear about Žilina startup weekends?

• Did you hear about JUGZA?

Agenda

Introduction– Davinci– Introduction of the topic – questions to be answered

What is a good software company made of?– What does it mean to be a good software company (good software, people, certified, profit?)– Excellent people - proactive, involved, coder vs. developer, team players, visionaries,

innovators, motivation, freedom, safety, etc.– Rock solid rules and processes– Crystal clear roles and responsibilities– Future prove and flexible technology stack and standards– Fully supportive tooling - Maven, Nexus, Jenkins, JRebel, JIRA, GIT, Vmware, Cloud– Spend time only on what we are the best in - make vs. buy

Agile - SCRUM– Yet another buzzword? Doing agile vs. being agile, agile is not adhoc– Team, responsibility, freedom, trust

How to get there – practical hints– To graduate or not to graduate, that is the question– How to identify good software company– How to become attractive for a good software company

• Knowing what you want• There is a lot of things to learn out there - specialization vs. general knowledge• Communication skills – languages

– Something to read

Davinci groupFounded in 1991 180 employees / 60 developers6 offices

Davinci ConsultancyDavinci Products / Davinci SoftwareDavinci Ventures

Davinci in words

Essence of Davinci

KEY VALUES

SECT

ORS

EXPERTISE

BANKING

INSURANCE

NOTARY

NON PROFIT

SOFTWARE DEVELOPMENT

ENTERPRISE ARCHIECTURE

PROCESS AUTOMATION

PROFESSIONAL ADVICE

CONSULTANCY

SMART SOLUTIONS

BUSSINESS PROCESS UTILIZATION

INTEGRATION

OPTIMIZATION

SAAS SOLUTIONS

TRUST INNOVATION ATTENTION TO DETAIL

PASSION COMMITMENT

PROFESSIONALISM

CONSULTANCY SERVICES

Our expertise

SOFTWARE DEVELOPMENT CONSUMER CREDIT & MORTGAGES

STRAIGHT THROUGH PROCESSING

NOTARY SERVICES & REGISTERS

PROCESS OPTIMIZATION

Our expertise

IT SUPPORT & MAINTENANCE

DOCUMENT PROCESS AUTOMATION

SAAS & CLOUD SOLUTIONS

DATA QUALITY & DATA MIGRATION

CREDIT SCORING & FRAUD PREVENTION

WEB & MOBILE APPLICATIONS

Technologies

Tooling

Technological partners

Activities

Davinci on internet

• http://davincisoftware.sk/ & http://davincigroep.nl/

• http://on.fb.me/1s2jLau

• https://twitter.com/DavinciSoftware

• https://www.youtube.com/user/Davincisoftware

• https://www.facebook.com/javazilina

Agile software development

• Individuals and interactions over processes and tools• Working software over comprehensive documentation• Customer collaboration over contract negotiation• Responding to change over following a plan

Open source technologies

• Lower total cost of ownership • Reduced dependence on software vendors• Easier to customize • Flexibility and freedom• Support and accountability

Davinci software

• Do I want to become a professional software developer?

• Am I ready?• What do I have to know?• What is expected of me?• What should drive my carrier: motivations, rewards,

worries, challenges?• Does the company matter?

Did you ask yourself already?

ProfessionalSoftware Company

What is it about?

• What does it mean to be a good software company (good software, people, certified, profit?)

• Excellent people - proactive, involved, coder vs. developer, team players, visionaries, innovators, motivation, freedom, safety, etc.

• Rock solid rules and processes• Crystal clear roles and responsibilities• Future prove and flexible technology stack and standards• Fully supportive tooling - Maven, Nexus, Jenkins, JRebel,

JIRA, GIT, VMware• Spend time only on what we are the best in - make vs. buy• Advanced Communication

Software company

• Effective communication is crucial for success (Face to face, video/audio call, IM, e-mail, screen share, UML, collaboration tools)

Communication

Continuous integration

Build server

• Manual, external or scheduled executions of builds and pipelines

• After commit builds• Night builds• Deploy builds• Release builds• QA builds• …

• Execution of test• Creation of releases• Creation of artifacts• Notifications (email)

Quality Assurance tool

• Architecture and design• Comments• Coding rules• Potential bugs• Complexity• Duplications• Tests

Artifacts repository

• Company artifacts (releases, snapshots)

• Public repositories mirror with OpenSource control

• 3rd party artifacts not available via public repositories

Developers team• IDE with

plugins• Development

environment• Tools

Project sites

• Versioned• Project info• Documentation

Release site

• Releases (artifacts, release notes, installers, installation instructions, documentation)

• Deployment team access• Customer controlled

access

Test environments

• TestLab sandboxes - virtual customer/production like environments (local or cloud)

• Automated creation (Puppet, Docker, Hiera)

Ticketing system

• Issue tracking• Planning (agile)• Work progress

tracking• Other tools

integration (source control, build server, social media, wiki, testing tools, etc.)

Source control

• Sources versioning• Branching• Tagging• Merging

Testers team

• Local virtual test environment

• Tools

Deployment team• Local virtual

test environment

• Tools

The others

• Project leaders

• Product owners

• Scrum masters

• Stakeholders• …

Artifacts repository

Artifacts repository

Source control

Source control

Source control

Source control

Planning and Ticketing system

Planning and Ticketing system

Planning and Ticketing system

Planning and Ticketing system

Planning and Ticketing system

Build server

Build server

Build server

Build server

Project sites

Project sites

Quality control

Quality control

Quality control

Quality control

Quality control

Quality control

Quality control

AGILE / SCRUM

• Yet another buzzword?• Doing agile vs. being agile, agile is not adhoc• Team, responsibility, freedom, trust

AGILE / SCRUM

How to get there?

Practical hints

• To graduate or not to graduate, that is the question• How to identify good software company• How to become attractive for a good software

company• Knowing what you want• There is a lot of things to learn out there -

specialization vs. general knowledge• Communication skills - languages

How to get there - practical hints

Something to read

Questions?

smart solutions

Thank you

top related