# Enterprise Developer

* Responsibilities
  * Assist in designing, developing, testing and troubleshooting enterprise applications.
  * Perform application coding based on project requirements.
  * Develop detail project specifications for new application developments and enhancements.
  * Support and maintain enterprise applications according to business needs.
  * Analyze and resolve application issues in a timely manner.
  * Develop effective programming solutions to meet project requirements.
  * Participate in design reviews and propose improvements.
  * Review and recommend changes to existing systems to improve performance and productivity.
  * Develop cost-reduction initiatives while maintaining the productivity.
  * Plan and execute assigned projects within deadlines.
  * Work with Manager in establishing project plan and schedules.
* <https://thenextweb.com/dd/2013/11/12/alpha-vs-enterprise-developers/>
* Enterprise development is the process of creating an application for use within an organization, or for sale to an organization.
  * enterprise applications may be specifically designed to accomplish a particular task relevant to an organization, such as employee timesheets or inventory management.
  * An enterprise application is developed to work within an organization's infrastructure,
  * By developing your own bespoke enterprise app, you can control every aspect.
  * Help to drive efficiency, streamline their operations or better engage their employees.
  * have much more control over your company data
  * They streamline or completely automate the low-level, mundane tasks. As a result, freeing your staff up to focus on higher value, more fulfilling work. All while driving the efficiency of your business!
  * Challenges
    * changing business requirements, ensuring return on investment, secruity, scalability,reliability,maintainablity, employee engagement
  * biggest benefit of enterprise apps is the employee insight you get. DAta

## Things done

* Create software features to the needs of business using technology implemented or tech that solves the problem
  * on greenfield or legacy applications
  * language, libraries and frameworks,
* Documentation
* Provide APIs and guis which work with and are used by mainly internal and external users
* Integrate with multiple services, which work in different ways
* Validate, transform, create, apply business rules, display, translate business workflows to code
* Deal with data
* Engineer solutions for software so that business can use, add and update software when needed using computer science and engineering knowledge
  * ie secruity, maintainablity, reliability, scalability
* Make sure app does what it does, keep doing what it does after time or when features are added/updated/removed
  * Testing - automated/manual, CI
* Part of the process to create, provide input, assess and time frame requirements
* Work in a workflow that produces quality software which meets the business needs in a timely manner
  * agile, kanban, xp,
* Monitor and solve problems on running applications
* Deploy applications
  * cloud - public/private, private servers
* management
  * recruitment, mentoring, teaching, inductions
