Software Engineers in Developer Services bring strong software engineering skills, excellent SDLC domain knowledge, and passion to build solutions that enable 2,500 other engineers at the firm to build and deliver their software more effectively and efficiently. This is a highly impactful role in supercharging the software delivery lifecycle to provide high quality software to all our end users more quickly and predictably.
We are looking for:
- Practitioner level engineers with strong hands-on experience with at least one major programming language. We work with Java, Kotlin, TypeScript, and Go.
- A DevOps mindset
- Independent problem solvers
- Effective communication skills
- Flexibility to learn and work in an environment with multiple programming languages and types of application
- Ideally experience from designing, building, testing and to supporting a complex application in production
- Experience of building for non-functional concerns such as security or performance is valued
A typical day may involve:
- Design and coding tasks to build or enhance development tools
- Research and POC work – our team is one of the first to review recent technologies for adoption at the firm
- Educating other engineers on best practice such as writing a blog or demonstrating a new tool or feature
- Working directly with other engineers to improve software delivery such as collaborating on CI/CD
You should consider this role if you enjoy solving non-trivial problems, working to a high standard with talented colleagues, and making a significant and visible contribution to the success of the enterprise.
ROLE SUMMARY AND JOB RESPONSIBILITIES
- Accountable for all parts of the software development lifecycle for their projects
- Contributes to the development of best practices within their group
- Leads code reviews and actively participates in providing feedback to others
- Accountable for managing technical debt
- Takes control of complex or vague problems and steps through them in a rational way
- Makes tactical vs. strategic tradeoffs
- Flexible in his or her thinking; able to evolve a solution when additional information or ideas are presented
- Identifies when junior engineers need help and provides it in a positive way that promotes their confidence.
- Proactively helps team members/make suggestions to improve practices.
- Capable of leading a small team on for specific projects or tasks
BUSINESS KNOWLEDGE
- Able to work directly with business stakeholders
- Decisions show a focus on current and future business priorities, together with commercial awareness
- Can articulate business needs and translate them into technology solutions
REQUIREMENTS
- Typically requires 3+ years of relevant experience
- Ideally has strong data engineering experience
- Stays current with best-of-breed technologies and the latest advances in software delivery
- Programs proficiently in one but ideally several languages
- Oversees significant pieces of development throughout the development lifecycle
- Holds a passion for improving how software is delivered
- Has strong practical experience of CI/CD
- Supports applications in production
- Debugs large components and assists others
- Leads code reviews and actively participates in providing feedback on others’ designs and code
- Owns technical debt in their own software
- Ideally has Linux, AWS, and/or Docker experience
- Ideally has experience of designing and building development tools
- Ideally, performs as an expert in one or more parts of the software lifecycle, for example has significant knowledge on the latest testing frameworks and techniques.
We offer Medical, Dental, Vision, Basic Life, Short-Term Disability, Accident, Term Life, Whole Life, and 401k for all W2 Consultants. A benefit overview will be provided as requested.