Lead Developers act as the primary point of contact for our clients, ensuring that teams are successful in their delivery. As a Lead Developer, you will bring a strategic mindset to projects and spend time negotiating with clients in order to bring a technical vision to life. Having a balance of high-level and tactical mindsets is a must, as you will spend time both with clients and alongside your fellow teammates.
You’ll spend time on the following:
-
You will lead or take part in the entire cycle of software consulting and delivery from ideation to deployment and everything in between
-
You will act as a mentor for less-experienced peers through both your technical knowledge and leadership skills
-
You will design solutions and choose technologies that solve clients’ problems while staying within constraints
-
You will use continuous delivery practices to improve software delivery speed
-
Work in collaborative, product-focused teams to build innovative customer experiences
-
Utilize the latest technology thinking from our tech radar in your work
-
Apply a variety of languages to your work and continue to code alongside Developers;
you will never go post-technical in this role
Here’s what we’re looking for:
-
10+ years of experience and you’re well-versed in two or more languages ( Java, Javascript, etc.) and are comfortable with the latest Object-Oriented technology
-
You have led software development teams using Agile, Lean and/or Continuous Delivery approaches such as TDD, continuous integration, pairing, and infrastructure automation
-
You have experience influencing others and always advocate for technical excellence while being open to change when needed
-
The ability to develop and execute a technical vision with a focus on business value
-
You’re willing and able to commit to travel to client sites in order to solve their business
problems
-
You’re resilient in ambiguous situations and can approach challenges from multiple
perspectives
-
We would love it if you’re up to speed on functional programming paradigms and
languages like Clojure, Scala, etc.
-
Bonus points if you have knowledge of cloud technology such as AWS, Docker or
Kubernetes
About Thoughtworks
About
Founded in 1993, we’ve grown from a small team in Chicago to a leading software consultancy of more than 8000 Thoughtworkers in 17 countries. Our cross-functional teams of strategists, developers, data engineers, and designers bring over two decades of global experience to every partnership.
Thoughtworks invented the concept of distributed agile and we know how to harness the power of global teams to deliver software excellence at scale. Today we help our clients to create their own path to digital fluency and to build organizational resilience to navigate the future.
Our job is to foster a vibrant community where people have the freedom to make an extraordinary impact on the world through technology.
As a Thoughtworker, you are free to seek out the most ambitious challenges. Free to change career paths. Free to use technology as a tool for social change. Free to be yourself.
Company video
Connect with the team
Similar jobs
Required Skills
- Extensive senior level full-stack software development experience with Node.js (2 or more years) with detailed understanding of user interface frameworks, back-end software architecture interactions and node module capabilities.
- Two or more years' experience with one or more JavaScript frameworks/technologies such as Express.js, Angular.js, React.js, MobX or Flux.js.
- Strong development experience with developing RESTful Web Services using Node.js.
- Comprehensive knowledge of Scrum and Kanban Agile development process and ceremonies including scrums, planning events, backlog grooming, retrospectives and demos.
- Complex programming, program debugging, data analysis, problem analysis and resolution of issues within open source applications.
- Strong communication and collaborative skills in providing technical direction and hands-on software development to include design, development and testing.
Desired Skills
- Client development experience with HTML, DHTML, CSS, JavaScript
- Experience with other JavaScritpt frameworks such as Express, Restify, Hapi, Sails, JOI, and Kinex.
- Javascript experience with ECMAScript2015 (ES6), ECMAScript2016 (ES7) or Bable compiler.
- Operating System and Infrastructure experience with Linux, Windows 7, Unix, Solaris, JMS, OOD, CVS.
- Experience with VersionOne Application Lifecycle Management Tools
- Experience with Jenkins and Continuous Integration.
- Standards & Protocols knowledge including XML, XSLT, WSDL, JSON.
- Experience with Testing Tools including Mocha, Chai, Sinon, Supertest, Enzyme, Instanbul, Selenium, Load Runner, JSLint and Cucumber.
- Experience with source code versioning and Pull Requests with Git and Stash.
- Experience with IDEs such as Sublime and Atom.
- Knowledge of SonarCube, Phabricator, Gerritt, Karma, Jasmine
- Knowledge of projects using SAFe methodology.
- Experience with DevOps processes and implementation.
- Experience with environments utilizing Cloud Technologies such as Amazon Web Services.
- Experience with NGiNX web server.
- Writing well-designed, testable and efficient code.
- Gathering and evaluating user feedback.
- Providing code documentation and other inputs to technical documents.
- Supporting continuous improvement by investigating alternatives and new technologies and presenting these for architectural review.
- Troubleshooting and debugging to optimise performance.
- Building reusable code libraries for future use.
- Integration of user-facing elements developed by front-end developers with server-side logic.
What you need to have:
- Proven experience as a Full Stack Developer and familiarity with common stacks.
- Experience in Node.js, React, MongoDB, Micro service-based architecture, Domain Driven Development, AWS a must.
- Knowledge of multiple back-end languages (e.g. C#, Java, Python) and JavaScript frameworks. Familiarity with databases (e.g. MySQL, MongoDB), web servers (e.g. Apache) and UI/UX design
- Node.js, React, MongoDB, Micro service-based architecture, Domain Driven Development, AWS is a must
- Knowledge of multiple back-end languages (e.g. C#, Java, Python) and JavaScript frameworks.
- Familiarity with databases (e.g. MySQL, MongoDB), web servers (e.g. Apache) and UI/ UX design.
- Entrepreneurial with a founder mindset.
- Ambitious, willing to work hard and invest in building a great career.
- Candidates who care more about what they learn and the impact they make.
- Take ownership of all his/her tasks.
- Believe in work-life integration. passion > work-life balance.
Manage all aspects of the project lifecycle, including problem definition, project strategy/roadmap, customer & driver needs, requirement, use cases definition and timely completion.
Oversee all technical aspects and technological resources of the organization for the Project Delivery. Establish a technological vision and lead the company’s technological development.
Can work effortlessly on the critical details needed to bring a product to market.
Shall act as a liaison between leadership and development team. Interface with leadership to establish priorities.
Can work on multiple products/projects simultaneously.
Expertise in Process Management using operational excellence to document test cases and conduct meetings to resolve issues Extensive experience in Project Delivery with expertise in Agile, (Scrum) paradigm & Waterfall development & Kanban method for solutions/products based on diverse technologies Shall Design and implement a software architecture Shall Design and implement a database design.
Excellent Team Leadership qualities involving tasking, monitoring, taking performance feedback, skill upgrade, resolving conflicts, mentoring and motivating the team for performance excellence.
Ability to estimate the resources and participants needed to achieve goals.
Develop best practices and tools for project execution and management.
Shall make executive decisions on behalf of the company’s technological requirements.
Shall act as a mentor to team members and ensure their continued growth.
Skills Required:
• NodeJs , Sequelize ORM, NPM / YARN
• React JS , Javascript
• Database Management System like MySQL, MongoDB
• AWS Services/Tools like EC2, S3, RDS, Lambda, DynamoDB, Cloudformation
• Best practices of CI/CD, Docker Hub, GITHub
We have multiple open positions for full-stack engineers to work with us on a cutting-edge eCommerce trade analysis platform.
I am looking for multiple full stack MERN developers
Must have experience with:
- Typescript
- NextJS
- Firebase / AWS services
- Experience working on SaaS applications with a large codebase
Nice to have
- Tailwind
- DynamoDB
- Chart libraries such as ChartJS
Position Summary
The Java Software Developer designs and develops computer applications using the Java programming language. Managing small-to-large scale projects, with respect to business impact, throughout the development life cycle. In this role, you can expect to leverage your 5+ years of Java engineering skills and knowledge to develop, test, and release features assigned to you and the Software Development team. You will be challenged daily to solve problems, expand your knowledge of the existing platform, and the technologies that can be used to continuously improve it.
Essential Functions
- Owns assigned projects throughout the development life cycle, from design through quality testing. Develops high quality code that delivers desired functionality using the technology selected for the project.
- Utilizes techniques including pair programming to ensure code quality. Additionally, maintains code quality through best practices, unit testing, and code quality automation.
- Supports continuous integration process.
- Collaborates closely with team members to determine best practices and client requirements for software.
- Develops intuitive software that meets and exceeds the needs of the company.
- Professionally maintains all software and provides regular updates that address client and/or company concerns.
- Analyzes and tests programs and products before formal launch. Addresses and troubleshoots coding problems quickly and efficiently to ensure a productive workplace.
- Ensures software security by developing programs to actively monitor the sharing of private information.
- Actively seeks ways to improve business software processes and interactions.
- When needed, provides valuable coaching and training for team members to ensure all employees are confident in the use of software applications.
- Regularly modifies software to fix errors, adapt to new hardware, improve overall performance, and/or upgrade interfaces.
- Directs system testing and validation procedures. Provides software programming and documentation development.
- Provides project proposals and project status updates to clients and departments, as needed. Prepares recommendations and project plans for the installation of new systems or modifications of an existing system.
- Works closely with clients and departments to resolve technical issues - including (but not limited to) software system design and maintenance.
- Regularly participates in an agile delivery process by helping size stories. Owns, researches, and recommends new solutions.
Skills and Abilities
- Excellent problem-solving skills and technical aptitude to solve complex issues.
- Proven ability to manage multiple high-priority projects.
- Excellent communication skills, both written and verbal.
- Ability to quickly adapt to a changing environment.
- Skilled in object-oriented (OO) design and design pattern.
- Skilled with Java 8 features, such as lambdas and streams.
- Demonstrated knowledge of API design standards, patterns, and best practices (especially Swagger and OpenAPI 3.0, REST, SOAP, MQ, JSON, Microservices etc.).
- Expert understanding of Spring Framework, Spring MVC REST, ORM/Hibernate and JDBC. As well as Hibernate/JPA and Object-relational mapping, including performance considerations.
- Experienced with RDBM systems: MYSQL Server, Oracle.
- Strong understanding of relational databases and writing SQL queries.
- Familiarity with the following front-end technologies: HTML, Javascript, CSS, Angular, Git, SQL, Maven
Experience
- Experience as a Java Developer, Java Engineer, or similar role required (i.e., Spring Framework / Spring boot and J2EE development required).
- Experience designing and developing REST API / web applications.
- Experience working with Agile methodologies (Scrum) and cross-functional teams (Product Owners, Scrum Masters, Developers, Designers, Business Analysts) a major plus.
- Advanced knowledge and experience in Cloud/SAAS integration, a plus.
Education
- Bachelor’s degree in computer science or a related field of study or equivalent level of education and experience.
Java Springboot Developer
- Java Springboot - Support end-end management of the APIs over its entire lifecycle
- Work with various application teams to understand their business needs and requirements for the API implementation
- Ensure API documentation is created and remains up to date
- Ensure code and design quality with appropriate logging, monitoring, tracing, and security standards in place
- Help troubleshoot and resolve issues related to the API platform, API accessibility and API deployments
- Perform root cause analysis for Production issues and come up with solutions that will prevent them from happening in the future
- Governance, Event Driven Architecture, message-based architectures, and caching strategies and frameworks.
- Participate and contribute in grooming technical user stories impacting integration
Who You Are
To qualify for this position, you should meet the following requirements:
- More than 6 years of experience in development, and implementation of enterprise-wide solutions based on Java Technologies (Java, J2EE, Webservices/Spring)
- At least 3-5 years of hands on experience with design, development and implementation of Spring Boot, Microservices
- Experience in Deploying Microservices (spring-boot, node's)
- Good understanding of security protocols (e.g. OAuth, SAML)
- Excellent analytical, oral, written communication and presentation skills with ability to interact with global delivery technical teams.
- Experience in Agile methodologies
• Bachelor's or Master’s degree in Computer Science or related.
• 5+ years of professional development experience.
• Deep experience in web applications, object-oriented programming, web services, REST,
Cloud computing, AWS/Azure, node.js, full-stack development
• Experience with multiple programming languages and frameworks including at least one
of JavaScript/HTML/CSS, Java, ReactJS, Python
• Experience in designing, developing and managing large scale web services
• Advance JavaScript knowledge is a must.
• Experience designing APIs and frameworks that are used by others
• Familiar with Git, Confluence, and Jira
• Exceptional problem-solving skills, with experience in defining and understanding complex
system architectures and design patterns
• Excellent communication skills. Be able to articulate technical decisions and produce
excellent technical documents
• Experience creating and maintaining unit tests and continuous integration
• Contribution to open source is a plus
• Experience developing cross-platform applications is a plus
We are looking for a full stack developer to produce scalable software solutions.
As a full stack developer, you should be comfortable around both front-end and back-end coding languages, development frameworks and third-party libraries. You should also be a team player with a knack for visual design and utility.
If you’re also familiar with Agile methodologies, we’d like to meet you.
Responsibilities:
- Developing front end website architecture.
- Designing user interactions on web pages.
- Developing back end website applications.
- Creating servers and databases for functionality.
- Ensuring cross-platform optimization for mobile phones.
- Ensuring responsiveness of applications.
- Working alongside graphic designers for web design features.
- Seeing through a project from conception to finished product.
- Designing and developing APIs.
- Meeting both technical and consumer needs.
- Staying abreast of developments in web applications and programming languages.
Requirements:
- Degree in Computer Science or related field
- Strong organizational and project management skills.
- Proficiency with fundamental front end languages such as HTML, CSS and JavaScript.
- Familiarity with JavaScript frameworks such as Angular JS, React and Amber.
- Proficiency with server side languages such as Python, Ruby, Java, PHP and .Net.
- Familiarity with database technology such as MySQL, Oracle and MongoDB.
- Excellent verbal communication skills.
- Good problem solving skills.
- Attention to detail.
Reporting directly to the Founder
The job requires a great deal of responsibility early on, but we're working on something exciting and there's lots of opportunity of growth and learning.
The job is full-time, remotely based, and with flexible hours.