Every engineer at this crypto-currency organization brings a unique set of skills, knowledge, and interests to our organization. Through teamwork they expand these horizons and contribute to every part of our stack, including building user interface components, adding APIs to client libraries, and scaling out our backend services to handle the traffic volume of a first-tier social sharing application.
At this crypto-currency organization, software development is a team exercise. Our engineers work together to plan and implement great solutions to interesting problems, delivering fully functional features to our consumers every two weeks or even more often than that.
Software engineering is divided into teams of 3-5 full-stack engineers, a product owner, a program manager, and a DevOps engineer. The engineers can and should have areas of specialization; however, any one engineer ought to be able to pick up and complete any work the team commits to delivering.
Full Stack Engineers have the following general responsibilities:
- As members of an engineering team, estimating the relative complexity of features planned for implementation and planning their implementation.
- Writing code in several different programming languages to implement features and fix defects that are both user-facing and service-oriented.
- Reviewing proposed changes to our codebase by other engineers or community members and providing useful feedback.
- Working with DevOps engineers to deploy applications to our platform.
- Setting up and maintaining automatic software building and testing.
- Diagnosing issues and failures in production services and assisting DevOps staff in repairs.